diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 Binary files /dev/null and b/.DS_Store differ diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..0842577c0dc8c1ba35ce06d68a2cabcfd04e8fea --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Chuan Guo + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..85840de8e724ca40523a647a7cb87778d663fd4a --- /dev/null +++ b/README.md @@ -0,0 +1,232 @@ +--- +title: MoMask +emoji: 🎭 +colorFrom: pink +colorTo: purple +sdk: gradio +sdk_version: 3.24.1 +app_file: app.py +pinned: false +--- + +# MoMask: Generative Masked Modeling of 3D Human Motions +## [[Project Page]](https://ericguo5513.github.io/momask) [[Paper]](https://arxiv.org/abs/2312.00063) +![teaser_image](https://ericguo5513.github.io/momask/static/images/teaser.png) + +If you find our code or paper helpful, please consider citing: +``` +@article{guo2023momask, + title={MoMask: Generative Masked Modeling of 3D Human Motions}, + author={Chuan Guo and Yuxuan Mu and Muhammad Gohar Javed and Sen Wang and Li Cheng}, + year={2023}, + eprint={2312.00063}, + archivePrefix={arXiv}, + primaryClass={cs.CV} +} +``` + +## :postbox: News +πŸ“’ **2023-12-19** --- Release scripts for temporal inpainting. + +πŸ“’ **2023-12-15** --- Release codes and models for momask. Including training/eval/generation scripts. + +πŸ“’ **2023-11-29** --- Initialized the webpage and git project. + + +## :round_pushpin: Get You Ready + +
+ +### 1. Conda Environment +``` +conda env create -f environment.yml +conda activate momask +pip install git+https://github.com/openai/CLIP.git +``` +We test our code on Python 3.7.13 and PyTorch 1.7.1 + + +### 2. Models and Dependencies + +#### Download Pre-trained Models +``` +bash prepare/download_models.sh +``` + +#### Download Evaluation Models and Gloves +For evaluation only. +``` +bash prepare/download_evaluator.sh +bash prepare/download_glove.sh +``` + +#### Troubleshooting +To address the download error related to gdown: "Cannot retrieve the public link of the file. You may need to change the permission to 'Anyone with the link', or have had many accesses". A potential solution is to run `pip install --upgrade --no-cache-dir gdown`, as suggested on https://github.com/wkentaro/gdown/issues/43. This should help resolve the issue. + +#### (Optional) Download Mannually +Visit [[Google Drive]](https://drive.google.com/drive/folders/1b3GnAbERH8jAoO5mdWgZhyxHB73n23sK?usp=drive_link) to download the models and evaluators mannually. + +### 3. Get Data + +You have two options here: +* **Skip getting data**, if you just want to generate motions using *own* descriptions. +* **Get full data**, if you want to *re-train* and *evaluate* the model. + +**(a). Full data (text + motion)** + +**HumanML3D** - Follow the instruction in [HumanML3D](https://github.com/EricGuo5513/HumanML3D.git), then copy the result dataset to our repository: +``` +cp -r ../HumanML3D/HumanML3D ./dataset/HumanML3D +``` +**KIT**-Download from [HumanML3D](https://github.com/EricGuo5513/HumanML3D.git), then place result in `./dataset/KIT-ML` + +#### + +
+ +## :rocket: Demo +
+ +### (a) Generate from a single prompt +``` +python gen_t2m.py --gpu_id 1 --ext exp1 --text_prompt "A person is running on a treadmill." +``` +### (b) Generate from a prompt file +An example of prompt file is given in `./assets/text_prompt.txt`. Please follow the format of `#` at each line. Motion length indicates the number of poses, which must be integeter and will be rounded by 4. In our work, motion is in 20 fps. + +If you write `#NA`, our model will determine a length. Note once there is **one** NA, all the others will be **NA** automatically. + +``` +python gen_t2m.py --gpu_id 1 --ext exp2 --text_path ./assets/text_prompt.txt +``` + + +A few more parameters you may be interested: +* `--repeat_times`: number of replications for generation, default `1`. +* `--motion_length`: specify the number of poses for generation, only applicable in (a). + +The output files are stored under folder `./generation//`. They are +* `numpy files`: generated motions with shape of (nframe, 22, 3), under subfolder `./joints`. +* `video files`: stick figure animation in mp4 format, under subfolder `./animation`. +* `bvh files`: bvh files of the generated motion, under subfolder `./animation`. + +We also apply naive foot ik to the generated motions, see files with suffix `_ik`. It sometimes works well, but sometimes will fail. + +
+ +## :dancers: Visualization +
+ +All the animations are manually rendered in blender. We use the characters from [mixamo](https://www.mixamo.com/#/). You need to download the characters in T-Pose with skeleton. + +### Retargeting +For retargeting, we found rokoko usually leads to large error on foot. On the other hand, [keemap.rig.transfer](https://github.com/nkeeline/Keemap-Blender-Rig-ReTargeting-Addon/releases) shows more precise retargetting. You could watch the [tutorial](https://www.youtube.com/watch?v=EG-VCMkVpxg) here. + +Following these steps: +* Download keemap.rig.transfer from the github, and install it in blender. +* Import both the motion files (.bvh) and character files (.fbx) in blender. +* `Shift + Select` the both source and target skeleton. (Do not need to be Rest Position) +* Switch to `Pose Mode`, then unfold the `KeeMapRig` tool at the top-right corner of the view window. +* Load and read the bone mapping file `./assets/mapping.json`(or `mapping6.json` if it doesn't work). This file is manually made by us. It works for most characters in mixamo. You could make your own. +* Adjust the `Number of Samples`, `Source Rig`, `Destination Rig Name`. +* Clik `Transfer Animation from Source Destination`, wait a few seconds. + +We didn't tried other retargetting tools. Welcome to comment if you find others are more useful. + +### Scene + +We use this [scene](https://drive.google.com/file/d/1lg62nugD7RTAIz0Q_YP2iZsxpUzzOkT1/view?usp=sharing) for animation. + + +
+ +## :clapper: Temporal Inpainting +
+We conduct mask-based editing in the m-transformer stage, followed by the regeneration of residual tokens for the entire sequence. To load your own motion, provide the path through `--source_motion`. Utilize `-msec` to specify the mask section, supporting either ratio or frame index. For instance, `-msec 0.3,0.6` with `max_motion_length=196` is equivalent to `-msec 59,118`, indicating the editing of the frame section [59, 118]. + +``` +python edit_t2m.py --gpu_id 1 --ext exp3 --use_res_model -msec 0.4,0.7 --text_prompt "A man picks something from the ground using his right hand." +``` + +Note: Presently, the source motion must adhere to the format of a HumanML3D dim-263 feature vector. An example motion vector data from the HumanML3D test set is available in `example_data/000612.npy`. To process your own motion data, you can utilize the `process_file` function from `utils/motion_process.py`. + +
+ +## :space_invader: Train Your Own Models +
+ + +**Note**: You have to train RVQ **BEFORE** training masked/residual transformers. The latter two can be trained simultaneously. + +### Train RVQ +``` +python train_vq.py --name rvq_name --gpu_id 1 --dataset_name t2m --batch_size 512 --num_quantizers 6 --max_epoch 500 --quantize_drop_prob 0.2 +``` + +### Train Masked Transformer +``` +python train_t2m_transformer.py --name mtrans_name --gpu_id 2 --dataset_name t2m --batch_size 64 --vq_name rvq_name +``` + +### Train Residual Transformer +``` +python train_res_transformer.py --name rtrans_name --gpu_id 2 --dataset_name t2m --batch_size 64 --vq_name rvq_name --cond_drop_prob 0.2 --share_weight +``` + +* `--dataset_name`: motion dataset, `t2m` for HumanML3D and `kit` for KIT-ML. +* `--name`: name your model. This will create to model space as `./checkpoints//` +* `--gpu_id`: GPU id. +* `--batch_size`: we use `512` for rvq training. For masked/residual transformer, we use `64` on HumanML3D and `16` for KIT-ML. +* `--num_quantizers`: number of quantization layers, `6` is used in our case. +* `--quantize_drop_prob`: quantization dropout ratio, `0.2` is used. +* `--vq_name`: when training masked/residual transformer, you need to specify the name of rvq model for tokenization. +* `--cond_drop_prob`: condition drop ratio, for classifier-free guidance. `0.2` is used. +* `--share_weight`: whether to share the projection/embedding weights in residual transformer. + +All the pre-trained models and intermediate results will be saved in space `./checkpoints//`. +
+ +## :book: Evaluation +
+ +### Evaluate RVQ Reconstruction: +HumanML3D: +``` +python eval_t2m_vq.py --gpu_id 0 --name rvq_nq6_dc512_nc512_noshare_qdp0.2 --dataset_name t2m --ext rvq_nq6 + +``` +KIT-ML: +``` +python eval_t2m_vq.py --gpu_id 0 --name rvq_nq6_dc512_nc512_noshare_qdp0.2_k --dataset_name kit --ext rvq_nq6 +``` + +### Evaluate Text2motion Generation: +HumanML3D: +``` +python eval_t2m_trans_res.py --res_name tres_nlayer8_ld384_ff1024_rvq6ns_cdp0.2_sw --dataset_name t2m --name t2m_nlayer8_nhead6_ld384_ff1024_cdp0.1_rvq6ns --gpu_id 1 --cond_scale 4 --time_steps 10 --ext evaluation +``` +KIT-ML: +``` +python eval_t2m_trans_res.py --res_name tres_nlayer8_ld384_ff1024_rvq6ns_cdp0.2_sw_k --dataset_name kit --name t2m_nlayer8_nhead6_ld384_ff1024_cdp0.1_rvq6ns_k --gpu_id 0 --cond_scale 2 --time_steps 10 --ext evaluation +``` + +* `--res_name`: model name of `residual transformer`. +* `--name`: model name of `masked transformer`. +* `--cond_scale`: scale of classifer-free guidance. +* `--time_steps`: number of iterations for inference. +* `--ext`: filename for saving evaluation results. + +The final evaluation results will be saved in `./checkpoints///eval/.log` + +
+ +## Acknowlegements + +We sincerely thank the open-sourcing of these works where our code is based on: + +[deep-motion-editing](https://github.com/DeepMotionEditing/deep-motion-editing), [Muse](https://github.com/lucidrains/muse-maskgit-pytorch), [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantize-pytorch), [T2M-GPT](https://github.com/Mael-zys/T2M-GPT), [MDM](https://github.com/GuyTevet/motion-diffusion-model/tree/main) and [MLD](https://github.com/ChenFengYe/motion-latent-diffusion/tree/main) + +## License +This code is distributed under an [MIT LICENSE](https://github.com/EricGuo5513/momask-codes/tree/main?tab=MIT-1-ov-file#readme). + +Note that our code depends on other libraries, including SMPL, SMPL-X, PyTorch3D, and uses datasets which each have their own respective licenses that must also be followed. \ No newline at end of file diff --git a/app.py b/app.py new file mode 100644 index 0000000000000000000000000000000000000000..14bda521c19ebfd5f13deb92616eb41827d82158 --- /dev/null +++ b/app.py @@ -0,0 +1,372 @@ +from functools import partial +import os + +import torch +import numpy as np +import gradio as gr +import random +import shutil + +print(f"Is CUDA available: {torch.cuda.is_available()}") +print(f"CUDA device: {torch.cuda.get_device_name(torch.cuda.current_device())}") + +import os +from os.path import join as pjoin + +import torch.nn.functional as F + +from models.mask_transformer.transformer import MaskTransformer, ResidualTransformer +from models.vq.model import RVQVAE, LengthEstimator + +from options.hgdemo_option import EvalT2MOptions +from utils.get_opt import get_opt + +from utils.fixseed import fixseed +from visualization.joints2bvh import Joint2BVHConvertor +from torch.distributions.categorical import Categorical + +from utils.motion_process import recover_from_ric +from utils.plot_script import plot_3d_motion + +from utils.paramUtil import t2m_kinematic_chain + +from gen_t2m import load_vq_model, load_res_model, load_trans_model, load_len_estimator + +clip_version = 'ViT-B/32' + +WEBSITE = """ +
+

MoMask: Generative Masked Modeling of 3D Human Motions

+

+Chuan Guo*   +Yuxuan Mu*   +Muhammad Gohar Javed*   +Sen Wang   +Li Cheng +

+

+arXiv 2023 +

+

+   +   +   + +

+

Description

+

+πŸ”₯πŸ”₯πŸ”₯ This space presents an interactive demo for MoMask, a method for text-to-motion generation!!! It generates human motions (skeletal animations) based on your descriptions. To gain a better understanding of our work, you could try the provided examples first. πŸ”₯πŸ”₯πŸ”₯ +

+

+πŸš€πŸš€πŸš€ In addition, we provide a link to download the generated human skeletal motion in BVH file format, compatible with CG software such as Blender!!! πŸš€πŸš€πŸš€ +

+

+😁😁😁 If you find this demo interesting, we would appreciate your star on our github. More details could be found on our webpage. 🫢🫢🫢 +

+

+If you have any issues on this space or feature requests, we warmly welcome you to contact us through our github repo or email. +

+
+""" +WEBSITE_bottom = """ +

+We thanks TMR for this cool space template. +

+ +""" + +EXAMPLES = [ + "A person is running on a treadmill.", "The person takes 4 steps backwards.", + "A person jumps up and then lands.", "The person was pushed but did not fall.", + "The person does a salsa dance.", "A figure streches it hands and arms above its head.", + "This person kicks with his right leg then jabs several times.", + "A person stands for few seconds and picks up his arms and shakes them.", + "A person walks in a clockwise circle and stops where he began.", + "A man bends down and picks something up with his right hand.", + "A person walks with a limp, their left leg gets injured.", + "A person repeatedly blocks their face with their right arm.", + "The person holds his left foot with his left hand, puts his right foot up and left hand up too.", + "A person stands, crosses left leg in front of the right, lowering themselves until they are sitting, both hands on the floor before standing and uncrossing legs.", + "The man walked forward, spun right on one foot and walked back to his original position.", + "A man is walking forward then steps over an object then continues walking forward.", +] + +# Show closest text in the training + + +# css to make videos look nice +# var(--block-border-color); TODO +CSS = """ +.generate_video { + position: relative; + margin-left: auto; + margin-right: auto; + box-shadow: var(--block-shadow); + border-width: var(--block-border-width); + border-color: #000000; + border-radius: var(--block-radius); + background: var(--block-background-fill); + width: 25%; + line-height: var(--line-sm); +} +} +""" + + +DEFAULT_TEXT = "A person is " + + +if not os.path.exists("checkpoints/t2m"): + os.system("bash prepare/download_models_demo.sh") + +########################## +######Preparing demo###### +########################## +parser = EvalT2MOptions() +opt = parser.parse() +fixseed(opt.seed) +opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) +dim_pose = 263 +root_dir = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) +model_dir = pjoin(root_dir, 'model') +model_opt_path = pjoin(root_dir, 'opt.txt') +model_opt = get_opt(model_opt_path, device=opt.device) + +######Loading RVQ###### +vq_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'opt.txt') +vq_opt = get_opt(vq_opt_path, device=opt.device) +vq_opt.dim_pose = dim_pose +vq_model, vq_opt = load_vq_model(vq_opt) + +model_opt.num_tokens = vq_opt.nb_code +model_opt.num_quantizers = vq_opt.num_quantizers +model_opt.code_dim = vq_opt.code_dim + +######Loading R-Transformer###### +res_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.res_name, 'opt.txt') +res_opt = get_opt(res_opt_path, device=opt.device) +res_model = load_res_model(res_opt, vq_opt, opt) + +assert res_opt.vq_name == model_opt.vq_name + +######Loading M-Transformer###### +t2m_transformer = load_trans_model(model_opt, opt, 'latest.tar') + +#####Loading Length Predictor##### +length_estimator = load_len_estimator(model_opt) + +t2m_transformer.eval() +vq_model.eval() +res_model.eval() +length_estimator.eval() + +res_model.to(opt.device) +t2m_transformer.to(opt.device) +vq_model.to(opt.device) +length_estimator.to(opt.device) + +opt.nb_joints = 22 +mean = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'meta', 'mean.npy')) +std = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'meta', 'std.npy')) +def inv_transform(data): + return data * std + mean + +kinematic_chain = t2m_kinematic_chain +converter = Joint2BVHConvertor() +cached_dir = './cached' +uid = 12138 +animation_path = pjoin(cached_dir, f'{uid}') +os.makedirs(animation_path, exist_ok=True) + +@torch.no_grad() +def generate( + text, uid, motion_length=0, use_ik=True, seed=10107, repeat_times=1, +): + # fixseed(seed) + print(text) + prompt_list = [] + length_list = [] + est_length = False + prompt_list.append(text) + if motion_length == 0: + est_length = True + else: + length_list.append(motion_length) + + if est_length: + print("Since no motion length are specified, we will use estimated motion lengthes!!") + text_embedding = t2m_transformer.encode_text(prompt_list) + pred_dis = length_estimator(text_embedding) + probs = F.softmax(pred_dis, dim=-1) # (b, ntoken) + token_lens = Categorical(probs).sample() # (b, seqlen) + else: + token_lens = torch.LongTensor(length_list) // 4 + token_lens = token_lens.to(opt.device).long() + + m_length = token_lens * 4 + captions = prompt_list + datas = [] + for r in range(repeat_times): + mids = t2m_transformer.generate(captions, token_lens, + timesteps=opt.time_steps, + cond_scale=opt.cond_scale, + temperature=opt.temperature, + topk_filter_thres=opt.topkr, + gsample=opt.gumbel_sample) + mids = res_model.generate(mids, captions, token_lens, temperature=1, cond_scale=5) + pred_motions = vq_model.forward_decoder(mids) + pred_motions = pred_motions.detach().cpu().numpy() + data = inv_transform(pred_motions) + ruid = random.randrange(99999) + for k, (caption, joint_data) in enumerate(zip(captions, data)): + animation_path = pjoin(cached_dir, f'{uid}') + os.makedirs(animation_path, exist_ok=True) + joint_data = joint_data[:m_length[k]] + joint = recover_from_ric(torch.from_numpy(joint_data).float(), 22).numpy() + bvh_path = pjoin(animation_path, "sample_repeat%d.bvh" % (r)) + save_path = pjoin(animation_path, "sample_repeat%d_%d.mp4"%(r, ruid)) + if use_ik: + print("Using IK") + _, joint = converter.convert(joint, filename=bvh_path, iterations=100) + else: + _, joint = converter.convert(joint, filename=bvh_path, iterations=100, foot_ik=False) + plot_3d_motion(save_path, kinematic_chain, joint, title=caption, fps=20) + np.save(pjoin(animation_path, "sample_repeat%d.npy"%(r)), joint) + data_unit = { + "url": pjoin(animation_path, "sample_repeat%d_%d.mp4"%(r, ruid)) + } + datas.append(data_unit) + + return datas + + +# HTML component +def get_video_html(data, video_id, width=700, height=700): + url = data["url"] + # class="wrap default svelte-gjihhp hide" + #
+ # width="{width}" height="{height}" + video_html = f""" +

+BVH Download +

+ +""" + return video_html + +def generate_component(generate_function, text, motion_len='0', postprocess='IK'): + if text == DEFAULT_TEXT or text == "" or text is None: + return [None for _ in range(1)] + # uid = random.randrange(99999) + try: + motion_len = max(0, min(int(float(motion_len) * 20), 196)) + except: + motion_len = 0 + use_ik = postprocess == 'IK' + datas = generate_function(text, uid, motion_len, use_ik) + htmls = [get_video_html(data, idx) for idx, data in enumerate(datas)] + return htmls + + +# LOADING + +# DEMO +theme = gr.themes.Default(primary_hue="blue", secondary_hue="gray") +generate_and_show = partial(generate_component, generate) + +with gr.Blocks(css=CSS, theme=theme) as demo: + gr.Markdown(WEBSITE) + videos = [] + + with gr.Row(): + with gr.Column(scale=3): + text = gr.Textbox( + show_label=True, + label="Text prompt", + value=DEFAULT_TEXT, + ) + with gr.Row(): + with gr.Column(scale=1): + motion_len = gr.Textbox( + show_label=True, + label="Motion length (<10s)", + value=0, + info="Specify the motion length; 0 to use the default auto-setting.", + ) + with gr.Column(scale=1): + use_ik = gr.Radio( + ["Raw", "IK"], + label="Post-processing", + value="IK", + info="Use basic inverse kinematic (IK) for foot contact locking", + ) + gen_btn = gr.Button("Generate", variant="primary") + clear = gr.Button("Clear", variant="secondary") + gr.Markdown( + f""" + + """ + ) + + with gr.Column(scale=2): + + def generate_example(text): + return generate_and_show(text) + + examples = gr.Examples( + examples=[[x, None, None] for x in EXAMPLES], + inputs=[text], + examples_per_page=10, + run_on_click=False, + cache_examples=False, + fn=generate_example, + outputs=[], + ) + + i = -1 + # should indent + for _ in range(1): + with gr.Row(): + for _ in range(1): + i += 1 + video = gr.HTML() + videos.append(video) + gr.Markdown(WEBSITE_bottom) + # connect the examples to the output + # a bit hacky + examples.outputs = videos + + def load_example(example_id): + processed_example = examples.non_none_processed_examples[example_id] + return gr.utils.resolve_singleton(processed_example) + + examples.dataset.click( + load_example, + inputs=[examples.dataset], + outputs=examples.inputs_with_examples, # type: ignore + show_progress=False, + postprocess=False, + queue=False, + ).then(fn=generate_example, inputs=examples.inputs, outputs=videos) + + gen_btn.click( + fn=generate_and_show, + inputs=[text, motion_len, use_ik], + outputs=videos, + ) + text.submit( + fn=generate_and_show, + inputs=[text, motion_len, use_ik], + outputs=videos, + ) + + def clear_videos(): + return [None for x in range(1)] + [DEFAULT_TEXT] + + clear.click(fn=clear_videos, outputs=videos + [text]) + +demo.launch(share=True) diff --git a/assets/mapping.json b/assets/mapping.json new file mode 100644 index 0000000000000000000000000000000000000000..5e1bfe242ff6cee712c10b6efaa4e8ea2c3576ab --- /dev/null +++ b/assets/mapping.json @@ -0,0 +1 @@ +{"bones": [{"name": "Hips", "label": "", "description": "", "SourceBoneName": "Hips", "DestinationBoneName": "mixamorig:Hips", "keyframe_this_bone": true, "CorrectionFactorX": 2.6179938316345215, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": true, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 0.2588190734386444, "QuatCorrectionFactorx": 0.965925931930542, "QuatCorrectionFactory": 2.7939677238464355e-09, "QuatCorrectionFactorz": -2.7939677238464355e-09, "scale_secondary_bone_name": ""}, {"name": "RightUpLeg", "label": "", "description": "", "SourceBoneName": "RightUpLeg", "DestinationBoneName": "mixamorig:RightUpLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftUpLeg", "label": "", "description": "", "SourceBoneName": "LeftUpLeg", "DestinationBoneName": "mixamorig:LeftUpLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightLeg", "label": "", "description": "", "SourceBoneName": "RightLeg", "DestinationBoneName": "mixamorig:RightLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 2.094395160675049, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftLeg", "label": "", "description": "", "SourceBoneName": "LeftLeg", "DestinationBoneName": "mixamorig:LeftLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 3.665191411972046, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightShoulder", "label": "", "description": "", "SourceBoneName": "RightShoulder", "DestinationBoneName": "mixamorig:RightShoulder", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftShoulder", "label": "", "description": "", "SourceBoneName": "LeftShoulder", "DestinationBoneName": "mixamorig:LeftShoulder", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightArm", "label": "", "description": "", "SourceBoneName": "RightArm", "DestinationBoneName": "mixamorig:RightArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": -1.0471975803375244, "CorrectionFactorZ": -0.1745329201221466, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftArm", "label": "", "description": "", "SourceBoneName": "LeftArm", "DestinationBoneName": "mixamorig:LeftArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 1.0471975803375244, "CorrectionFactorZ": 0.1745329201221466, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightForeArm", "label": "", "description": "", "SourceBoneName": "RightForeArm", "DestinationBoneName": "mixamorig:RightForeArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": -2.094395160675049, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftForeArm", "label": "", "description": "", "SourceBoneName": "LeftForeArm", "DestinationBoneName": "mixamorig:LeftForeArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 1.5707963705062866, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Spine", "label": "", "description": "", "SourceBoneName": "Spine", "DestinationBoneName": "mixamorig:Spine", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Spine1", "label": "", "description": "", "SourceBoneName": "Spine1", "DestinationBoneName": "mixamorig:Spine1", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Spine2", "label": "", "description": "", "SourceBoneName": "Spine2", "DestinationBoneName": "mixamorig:Spine2", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Neck", "label": "", "description": "", "SourceBoneName": "Neck", "DestinationBoneName": "mixamorig:Neck", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Head", "label": "", "description": "", "SourceBoneName": "Head", "DestinationBoneName": "mixamorig:Head", "keyframe_this_bone": true, "CorrectionFactorX": 0.3490658402442932, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightFoot", "label": "", "description": "", "SourceBoneName": "RightFoot", "DestinationBoneName": "mixamorig:RightFoot", "keyframe_this_bone": true, "CorrectionFactorX": -0.19192171096801758, "CorrectionFactorY": 2.979980945587158, "CorrectionFactorZ": -0.05134282633662224, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": -0.082771435379982, "QuatCorrectionFactorx": -0.0177358016371727, "QuatCorrectionFactory": -0.9920229315757751, "QuatCorrectionFactorz": -0.09340716898441315, "scale_secondary_bone_name": ""}, {"name": "LeftFoot", "label": "", "description": "", "SourceBoneName": "LeftFoot", "DestinationBoneName": "mixamorig:LeftFoot", "keyframe_this_bone": true, "CorrectionFactorX": -0.25592508912086487, "CorrectionFactorY": -2.936899423599243, "CorrectionFactorZ": 0.2450830191373825, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 0.11609010398387909, "QuatCorrectionFactorx": 0.10766097158193588, "QuatCorrectionFactory": -0.9808290004730225, "QuatCorrectionFactorz": -0.11360746622085571, "scale_secondary_bone_name": ""}], "start_frame_to_apply": 0, "number_of_frames_to_apply": 196, "keyframe_every_n_frames": 1, "source_rig_name": "bvh_batch1_sample30_repeat1_len48", "destination_rig_name": "Armature", "bone_rotation_mode": "EULER", "bone_mapping_file": "C:\\Users\\cguo2\\Documents\\CVPR2024_MoMask\\mapping.json"} \ No newline at end of file diff --git a/assets/mapping6.json b/assets/mapping6.json new file mode 100644 index 0000000000000000000000000000000000000000..2b80b1e7906190b79e67cc7870c4d57e27c9f00d --- /dev/null +++ b/assets/mapping6.json @@ -0,0 +1 @@ +{"bones": [{"name": "Hips", "label": "", "description": "", "SourceBoneName": "Hips", "DestinationBoneName": "mixamorig6:Hips", "keyframe_this_bone": true, "CorrectionFactorX": 2.6179938316345215, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": true, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 0.2588190734386444, "QuatCorrectionFactorx": 0.965925931930542, "QuatCorrectionFactory": 2.7939677238464355e-09, "QuatCorrectionFactorz": -2.7939677238464355e-09, "scale_secondary_bone_name": ""}, {"name": "RightUpLeg", "label": "", "description": "", "SourceBoneName": "RightUpLeg", "DestinationBoneName": "mixamorig6:RightUpLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftUpLeg", "label": "", "description": "", "SourceBoneName": "LeftUpLeg", "DestinationBoneName": "mixamorig6:LeftUpLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightLeg", "label": "", "description": "", "SourceBoneName": "RightLeg", "DestinationBoneName": "mixamorig6:RightLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 2.094395160675049, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftLeg", "label": "", "description": "", "SourceBoneName": "LeftLeg", "DestinationBoneName": "mixamorig6:LeftLeg", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 3.665191411972046, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightShoulder", "label": "", "description": "", "SourceBoneName": "RightShoulder", "DestinationBoneName": "mixamorig6:RightShoulder", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftShoulder", "label": "", "description": "", "SourceBoneName": "LeftShoulder", "DestinationBoneName": "mixamorig6:LeftShoulder", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightArm", "label": "", "description": "", "SourceBoneName": "RightArm", "DestinationBoneName": "mixamorig6:RightArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": -1.0471975803375244, "CorrectionFactorZ": -0.1745329201221466, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftArm", "label": "", "description": "", "SourceBoneName": "LeftArm", "DestinationBoneName": "mixamorig6:LeftArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 1.0471975803375244, "CorrectionFactorZ": 0.1745329201221466, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "RightForeArm", "label": "", "description": "", "SourceBoneName": "RightForeArm", "DestinationBoneName": "mixamorig6:RightForeArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": -2.094395160675049, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "LeftForeArm", "label": "", "description": "", "SourceBoneName": "LeftForeArm", "DestinationBoneName": "mixamorig6:LeftForeArm", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 1.5707963705062866, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Spine", "label": "", "description": "", "SourceBoneName": "Spine", "DestinationBoneName": "mixamorig6:Spine", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Spine1", "label": "", "description": "", "SourceBoneName": "Spine1", "DestinationBoneName": "mixamorig6:Spine1", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Spine2", "label": "", "description": "", "SourceBoneName": "Spine2", "DestinationBoneName": "mixamorig6:Spine2", "keyframe_this_bone": true, "CorrectionFactorX": 0.0, "CorrectionFactorY": 0.0, "CorrectionFactorZ": 0.0, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 1.0, "QuatCorrectionFactorx": 0.0, "QuatCorrectionFactory": 0.0, "QuatCorrectionFactorz": 0.0, "scale_secondary_bone_name": ""}, {"name": "Neck", "label": "", "description": "", "SourceBoneName": "Neck", "DestinationBoneName": "mixamorig6:Neck", "keyframe_this_bone": true, "CorrectionFactorX": -0.994345486164093, "CorrectionFactorY": -0.006703000050038099, "CorrectionFactorZ": 0.04061730206012726, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 0.8787809014320374, "QuatCorrectionFactorx": -0.4767816960811615, "QuatCorrectionFactory": -0.01263047568500042, "QuatCorrectionFactorz": 0.016250507906079292, "scale_secondary_bone_name": ""}, {"name": "Head", "label": "", "description": "", "SourceBoneName": "Head", "DestinationBoneName": "mixamorig6:Head", "keyframe_this_bone": true, "CorrectionFactorX": -0.07639937847852707, "CorrectionFactorY": 0.011205507442355156, "CorrectionFactorZ": 0.011367863975465298, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": 0.9992374181747437, "QuatCorrectionFactorx": -0.038221005350351334, "QuatCorrectionFactory": 0.0053814793936908245, "QuatCorrectionFactorz": 0.005893632769584656, "scale_secondary_bone_name": ""}, {"name": "RightFoot", "label": "", "description": "", "SourceBoneName": "RightFoot", "DestinationBoneName": "mixamorig6:RightFoot", "keyframe_this_bone": true, "CorrectionFactorX": -0.17194896936416626, "CorrectionFactorY": 2.7372374534606934, "CorrectionFactorZ": -0.029542576521635056, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": -0.20128199458122253, "QuatCorrectionFactorx": 0.002824343740940094, "QuatCorrectionFactory": -0.9761614799499512, "QuatCorrectionFactorz": -0.08115538209676743, "scale_secondary_bone_name": ""}, {"name": "LeftFoot", "label": "", "description": "", "SourceBoneName": "LeftFoot", "DestinationBoneName": "mixamorig6:LeftFoot", "keyframe_this_bone": true, "CorrectionFactorX": -0.09363158047199249, "CorrectionFactorY": -2.9336421489715576, "CorrectionFactorZ": -0.17343592643737793, "has_twist_bone": false, "TwistBoneName": "", "set_bone_position": false, "set_bone_rotation": true, "bone_rotation_application_axis": "XYZ", "position_correction_factorX": 0.0, "position_correction_factorY": 0.0, "position_correction_factorZ": 0.0, "position_gain": 1.0, "position_pole_distance": 0.30000001192092896, "postion_type": "SINGLE_BONE_OFFSET", "set_bone_scale": false, "scale_gain": 1.0, "scale_max": 1.0, "scale_min": 0.5, "bone_scale_application_axis": "Y", "QuatCorrectionFactorw": -0.09925344586372375, "QuatCorrectionFactorx": 0.09088610112667084, "QuatCorrectionFactory": 0.9893556833267212, "QuatCorrectionFactorz": 0.05535021424293518, "scale_secondary_bone_name": ""}], "start_frame_to_apply": 0, "number_of_frames_to_apply": 196, "keyframe_every_n_frames": 1, "source_rig_name": "MoMask__02_ik", "destination_rig_name": "Armature", "bone_rotation_mode": "EULER", "bone_mapping_file": "C:\\Users\\cguo2\\Documents\\CVPR2024_MoMask\\mapping6.json"} \ No newline at end of file diff --git a/assets/text_prompt.txt b/assets/text_prompt.txt new file mode 100644 index 0000000000000000000000000000000000000000..eb310cda0fe9f293f97c4266f3bc39646351a6f7 --- /dev/null +++ b/assets/text_prompt.txt @@ -0,0 +1,12 @@ +the person holds his left foot with his left hand, puts his right foot up and left hand up too.#132 +a man bends down and picks something up with his left hand.#84 +A man stands for few seconds and picks up his arms and shakes them.#176 +A person walks with a limp, their left leg get injured.#192 +a person jumps up and then lands.#52 +a person performs a standing back kick.#52 +A person pokes their right hand along the ground, like they might be planting seeds.#60 +the person steps forward and uses the left leg to kick something forward.#92 +the man walked forward, spun right on one foot and walked back to his original position.#92 +the person was pushed but did not fall.#124 +this person stumbles left and right while moving forward.#132 +a person reaching down and picking something up.#148 \ No newline at end of file diff --git a/checkpoints/kit/Comp_v6_KLD005/meta/mean.npy b/checkpoints/kit/Comp_v6_KLD005/meta/mean.npy new file mode 100644 index 0000000000000000000000000000000000000000..c1f076c473eaabf4e6c0144d3e6db8b6a3c7e976 --- /dev/null +++ b/checkpoints/kit/Comp_v6_KLD005/meta/mean.npy @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e23fac51db2215ab5666324226be48f27efd6a6e7b22ebd17c28e0f056a7c22 +size 2136 diff --git a/checkpoints/kit/Comp_v6_KLD005/meta/std.npy b/checkpoints/kit/Comp_v6_KLD005/meta/std.npy new file mode 100644 index 0000000000000000000000000000000000000000..02a4c81095a331998ae0c95e3b01dc48c6d37b77 --- /dev/null +++ b/checkpoints/kit/Comp_v6_KLD005/meta/std.npy @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:296a60656cea07e65ee64512d73d47c0412df0698b35194116330661be32fa90 +size 2136 diff --git a/checkpoints/kit/Comp_v6_KLD005/opt.txt b/checkpoints/kit/Comp_v6_KLD005/opt.txt new file mode 100644 index 0000000000000000000000000000000000000000..805c8ecb40568f1d06c6b0b266d7bffc81d69b3c --- /dev/null +++ b/checkpoints/kit/Comp_v6_KLD005/opt.txt @@ -0,0 +1,54 @@ +------------ Options ------------- +batch_size: 32 +checkpoints_dir: ./checkpoints +dataset_name: kit +decomp_name: Decomp_SP001_SM001_H512 +dim_att_vec: 512 +dim_dec_hidden: 1024 +dim_movement2_dec_hidden: 512 +dim_movement_dec_hidden: 512 +dim_movement_enc_hidden: 512 +dim_movement_latent: 512 +dim_msd_hidden: 512 +dim_pos_hidden: 1024 +dim_pri_hidden: 1024 +dim_seq_de_hidden: 512 +dim_seq_en_hidden: 512 +dim_text_hidden: 512 +dim_z: 128 +early_stop_count: 3 +estimator_mod: bigru +eval_every_e: 5 +feat_bias: 5 +fixed_steps: 5 +gpu_id: 2 +input_z: False +is_continue: True +is_train: True +lambda_fake: 10 +lambda_gan_l: 0.1 +lambda_gan_mt: 0.1 +lambda_gan_mv: 0.1 +lambda_kld: 0.005 +lambda_rec: 1 +lambda_rec_init: 1 +lambda_rec_mot: 1 +lambda_rec_mov: 1 +log_every: 50 +lr: 0.0002 +max_sub_epoch: 50 +max_text_len: 20 +n_layers_dec: 1 +n_layers_msd: 2 +n_layers_pos: 1 +n_layers_pri: 1 +n_layers_seq_de: 2 +n_layers_seq_en: 1 +name: Comp_v6_KLD005 +num_experts: 4 +save_every_e: 10 +save_latest: 500 +text_enc_mod: bigru +tf_ratio: 0.4 +unit_length: 4 +-------------- End ---------------- diff --git a/checkpoints/kit/text_mot_match/eval/E005.txt b/checkpoints/kit/text_mot_match/eval/E005.txt new file mode 100644 index 0000000000000000000000000000000000000000..49b69800727c2e49a00f7655495c53d045bee03e --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E005.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.134 2.099 3.881 3.921 2.285 3.744 2.655 1.721 1.946 2.250 2.924 6.876 3.502 1.861 5.818 3.507 8.488 1.692 1.776 4.583 1.980 2.727 3.955 3.607 5.916 3.186 3.832 1.700 1.664 2.896 3.318 2.128 +Negative Pairs Distance +4.801 7.064 6.329 6.437 3.465 6.363 8.897 6.655 10.889 6.358 8.022 8.131 3.472 9.457 10.489 3.636 9.595 9.930 12.090 6.514 10.054 2.828 11.206 9.073 6.163 10.645 7.251 7.684 13.491 3.869 8.233 5.459 diff --git a/checkpoints/kit/text_mot_match/eval/E010.txt b/checkpoints/kit/text_mot_match/eval/E010.txt new file mode 100644 index 0000000000000000000000000000000000000000..a86ed509d955cd7f69f8d9bbbfc30d4b0a651b49 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E010.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.908 2.165 2.165 3.126 1.697 1.459 2.442 1.858 1.139 1.622 2.096 2.478 4.929 3.777 4.985 2.417 1.533 2.688 4.114 2.632 3.061 2.188 5.152 2.518 3.600 4.669 8.488 2.839 3.971 2.343 3.527 3.871 +Negative Pairs Distance +11.756 2.332 11.629 8.415 1.482 5.168 9.379 10.146 11.044 11.025 11.965 5.885 10.289 5.902 8.258 11.976 8.073 7.024 9.437 4.496 3.879 7.686 4.651 4.576 2.901 14.143 2.428 8.259 5.828 7.087 12.836 13.889 diff --git a/checkpoints/kit/text_mot_match/eval/E015.txt b/checkpoints/kit/text_mot_match/eval/E015.txt new file mode 100644 index 0000000000000000000000000000000000000000..fddd7943db70937d2fa7621d56ef11a89e724c45 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E015.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.850 4.731 5.109 2.265 1.610 2.926 2.168 2.637 2.084 1.510 2.175 2.338 1.857 5.098 1.801 2.207 2.303 1.409 2.606 1.605 2.917 1.752 3.372 2.717 3.066 2.843 2.329 2.640 2.341 4.156 3.331 8.131 +Negative Pairs Distance +6.084 8.782 9.299 5.081 10.574 12.375 6.629 3.773 12.802 17.637 15.346 12.001 11.877 8.885 5.704 7.574 10.524 11.066 13.124 9.736 2.497 16.383 10.255 14.209 15.128 12.731 10.557 15.367 11.058 11.331 2.683 9.325 diff --git a/checkpoints/kit/text_mot_match/eval/E020.txt b/checkpoints/kit/text_mot_match/eval/E020.txt new file mode 100644 index 0000000000000000000000000000000000000000..099a6393df75b9cdfa40a129a73a9ade8bd4c6da --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E020.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.720 2.590 1.074 3.083 2.166 2.835 6.362 2.816 2.871 1.793 3.421 6.261 1.957 5.514 2.695 2.254 1.668 1.689 4.970 2.880 1.581 4.509 2.255 3.921 2.240 2.384 2.844 2.736 4.322 3.335 3.728 2.677 +Negative Pairs Distance +11.181 11.564 13.729 7.366 12.419 12.882 8.641 18.567 7.485 7.284 11.086 8.577 5.952 4.970 14.443 13.611 11.813 10.937 13.638 11.140 14.285 8.947 13.830 14.733 11.218 3.280 2.429 11.807 11.222 9.967 10.158 10.779 diff --git a/checkpoints/kit/text_mot_match/eval/E025.txt b/checkpoints/kit/text_mot_match/eval/E025.txt new file mode 100644 index 0000000000000000000000000000000000000000..3bf60647080023a89acfc507c14677eb84ee7f6f --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E025.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.553 1.793 2.145 1.160 1.568 0.923 2.591 7.707 2.747 12.233 5.216 1.305 1.507 2.035 1.736 2.155 1.751 1.618 2.041 2.239 2.825 2.352 3.072 2.020 1.761 5.428 2.252 1.604 2.319 2.266 3.278 3.328 +Negative Pairs Distance +11.462 3.411 1.404 11.581 3.764 11.409 14.073 4.259 12.997 3.549 7.593 12.030 12.991 7.647 12.337 12.592 14.496 14.496 13.530 13.371 12.775 14.828 11.200 17.627 9.128 9.617 9.297 6.782 14.615 2.304 9.306 10.946 diff --git a/checkpoints/kit/text_mot_match/eval/E030.txt b/checkpoints/kit/text_mot_match/eval/E030.txt new file mode 100644 index 0000000000000000000000000000000000000000..5aee3b3bd41bfb0a06e49454ff645f437f76d0b2 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E030.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +7.378 4.702 10.228 2.154 7.611 0.943 1.770 1.255 5.552 3.161 2.180 2.252 3.278 1.767 1.787 1.450 1.546 2.051 1.476 1.828 1.829 1.423 1.150 2.198 9.395 1.748 2.700 2.304 3.917 4.163 2.811 2.562 +Negative Pairs Distance +3.884 11.919 5.835 6.898 5.753 19.333 10.732 16.049 10.197 11.546 13.682 12.106 12.993 11.981 13.373 13.464 11.788 11.267 16.719 9.747 4.581 14.785 13.978 9.505 7.465 11.392 11.481 9.757 11.077 16.272 15.701 12.256 diff --git a/checkpoints/kit/text_mot_match/eval/E035.txt b/checkpoints/kit/text_mot_match/eval/E035.txt new file mode 100644 index 0000000000000000000000000000000000000000..9d8033686d1b0875479724d20aaccb0a3517306c --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E035.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +2.095 9.020 2.176 1.030 1.653 1.306 1.963 4.513 1.906 1.186 2.731 1.678 1.395 2.232 1.394 4.946 1.057 4.450 3.671 2.931 3.655 1.374 1.361 6.001 5.699 1.579 10.237 2.940 1.622 2.032 7.194 1.069 +Negative Pairs Distance +13.345 14.638 14.061 19.142 8.843 12.152 15.600 7.368 15.635 13.863 15.644 3.686 13.388 15.807 20.432 11.571 13.876 8.513 13.236 19.330 8.771 14.880 13.005 10.810 12.430 10.102 4.440 18.083 3.135 13.201 5.465 8.700 diff --git a/checkpoints/kit/text_mot_match/eval/E040.txt b/checkpoints/kit/text_mot_match/eval/E040.txt new file mode 100644 index 0000000000000000000000000000000000000000..ab43f23acb669dda3a47cfb8de71a09c9e0a4dbb --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E040.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +2.531 1.118 4.384 1.787 1.595 2.184 1.371 1.264 2.086 1.477 1.123 1.240 1.040 11.428 3.469 1.511 1.782 2.528 6.645 1.197 1.967 1.188 3.484 5.019 1.024 1.892 3.185 1.017 2.682 1.116 1.047 1.691 +Negative Pairs Distance +12.010 18.700 16.704 10.839 15.398 8.070 9.340 14.570 8.946 18.806 4.114 12.699 11.821 4.733 15.875 14.064 17.230 16.277 14.135 22.007 18.454 13.210 8.825 8.937 9.880 16.306 13.555 13.649 5.738 12.752 12.994 1.158 diff --git a/checkpoints/kit/text_mot_match/eval/E045.txt b/checkpoints/kit/text_mot_match/eval/E045.txt new file mode 100644 index 0000000000000000000000000000000000000000..4414faf958c9f9b64b8ccfdabfcfc89bd8a352ca --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E045.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.412 2.614 2.471 0.842 2.629 7.116 7.275 5.793 1.034 8.645 4.851 2.357 1.155 1.208 1.168 1.698 1.550 1.132 7.423 2.531 1.147 2.240 1.575 1.232 1.455 2.134 1.421 3.723 2.887 1.759 3.806 4.387 +Negative Pairs Distance +10.150 13.459 14.645 13.875 8.746 12.398 13.303 16.393 22.565 9.265 13.325 9.629 18.867 15.043 18.596 19.413 17.903 8.695 4.948 13.620 14.171 19.699 15.496 11.753 12.914 17.017 7.990 14.401 11.768 8.648 13.926 13.402 diff --git a/checkpoints/kit/text_mot_match/eval/E050.txt b/checkpoints/kit/text_mot_match/eval/E050.txt new file mode 100644 index 0000000000000000000000000000000000000000..4c0e785820600b128e776f6a53c1108a7d73b375 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E050.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +5.304 2.162 1.767 7.675 1.446 5.696 2.277 0.717 1.477 12.431 3.673 1.286 2.633 1.883 2.555 1.399 11.572 1.303 3.411 1.521 3.885 0.984 1.210 1.038 5.024 5.886 1.283 1.026 2.056 1.738 3.654 2.659 +Negative Pairs Distance +17.692 17.993 15.431 10.788 22.819 16.591 23.417 13.203 7.453 17.521 19.102 17.595 7.883 20.475 11.371 17.178 5.380 4.884 17.968 18.298 13.822 19.112 11.842 10.838 14.131 14.906 16.252 14.499 13.878 2.300 11.417 21.558 diff --git a/checkpoints/kit/text_mot_match/eval/E055.txt b/checkpoints/kit/text_mot_match/eval/E055.txt new file mode 100644 index 0000000000000000000000000000000000000000..08c17b1efe6f415656926fbbce9d17da2d8fe849 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E055.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.286 11.980 3.768 1.701 1.978 1.173 1.752 5.425 4.705 13.314 1.451 1.055 2.002 1.749 1.538 5.364 2.637 1.023 1.074 3.722 2.823 2.851 3.961 11.326 1.716 1.712 3.175 2.536 2.563 1.154 1.269 3.001 +Negative Pairs Distance +11.300 3.898 15.139 13.965 1.849 22.030 13.080 15.480 10.960 11.965 4.839 9.320 3.329 24.126 10.234 8.670 18.491 14.462 14.877 7.870 10.906 13.899 6.250 5.214 8.553 16.769 11.940 18.139 23.584 9.895 10.384 5.684 diff --git a/checkpoints/kit/text_mot_match/eval/E060.txt b/checkpoints/kit/text_mot_match/eval/E060.txt new file mode 100644 index 0000000000000000000000000000000000000000..d4a2c463b91e1cd41081941610fca6c89353c31b --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E060.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +2.646 12.210 0.830 2.921 0.875 1.999 4.337 0.802 2.268 0.840 2.059 2.004 0.628 2.383 4.972 0.918 2.044 4.344 1.900 2.817 3.564 2.183 1.713 1.272 1.134 1.917 5.561 2.390 2.127 3.047 3.518 2.000 +Negative Pairs Distance +6.734 13.725 24.744 24.194 14.176 12.985 4.384 8.463 14.464 20.511 13.927 15.659 18.104 10.338 14.063 18.091 20.923 11.184 18.401 24.048 9.389 11.433 10.597 22.686 12.311 3.344 17.366 14.234 20.743 16.628 18.863 6.987 diff --git a/checkpoints/kit/text_mot_match/eval/E065.txt b/checkpoints/kit/text_mot_match/eval/E065.txt new file mode 100644 index 0000000000000000000000000000000000000000..a563bdaea10bf599f68cc6fc4c69fae18f2b3c23 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E065.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +4.282 9.482 1.553 1.383 1.122 2.035 0.854 1.958 1.230 1.450 2.783 5.676 0.971 1.129 1.624 1.782 2.330 7.208 1.222 4.682 1.120 2.564 3.288 1.271 1.158 0.989 1.165 1.431 1.322 3.795 1.797 3.976 +Negative Pairs Distance +10.757 12.124 8.528 18.803 11.622 10.307 18.852 9.454 13.769 24.235 15.302 4.133 9.539 19.628 16.231 15.288 18.951 18.389 14.687 9.998 8.974 20.162 12.884 14.608 19.159 19.726 16.222 4.654 16.910 15.950 4.430 9.514 diff --git a/checkpoints/kit/text_mot_match/eval/E070.txt b/checkpoints/kit/text_mot_match/eval/E070.txt new file mode 100644 index 0000000000000000000000000000000000000000..2086afc999a710477c56437cb1d7bda41dc36683 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E070.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.853 1.746 2.313 1.558 7.835 0.945 1.523 7.543 0.974 1.104 2.812 1.116 2.340 1.406 1.499 3.407 1.224 2.075 5.423 2.600 1.321 6.505 1.368 8.134 3.274 2.626 2.342 3.057 4.097 2.022 1.990 1.068 +Negative Pairs Distance +16.888 5.090 20.032 15.900 10.658 9.950 24.814 10.751 8.165 16.934 14.184 18.338 13.667 6.515 12.078 7.889 9.116 26.239 10.249 16.732 15.455 16.731 7.098 9.890 5.493 7.409 13.144 13.131 9.515 1.967 7.075 12.000 diff --git a/checkpoints/kit/text_mot_match/eval/E075.txt b/checkpoints/kit/text_mot_match/eval/E075.txt new file mode 100644 index 0000000000000000000000000000000000000000..04dff257bf476037689f50c7b40b07e105912ca5 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E075.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +5.996 5.991 6.329 11.539 1.356 2.672 1.162 1.664 7.148 1.469 1.583 4.772 1.021 2.245 1.263 2.734 1.628 0.797 2.095 2.180 6.602 1.719 4.648 1.462 1.192 6.518 0.926 7.409 1.480 1.979 2.509 3.288 +Negative Pairs Distance +10.215 10.800 19.266 6.959 6.636 25.179 16.741 19.729 11.336 16.523 16.567 10.568 15.567 13.981 4.875 8.074 1.630 8.896 20.647 15.145 17.009 20.560 13.781 23.201 18.929 18.235 7.325 26.645 19.469 20.427 15.561 15.197 diff --git a/checkpoints/kit/text_mot_match/eval/E080.txt b/checkpoints/kit/text_mot_match/eval/E080.txt new file mode 100644 index 0000000000000000000000000000000000000000..8da7cdea578ad05634855f6a8705e3a54c303c19 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E080.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.944 1.884 4.347 1.715 4.907 1.845 1.217 9.310 1.924 2.145 1.969 1.843 3.612 0.980 1.484 5.777 2.220 1.096 1.829 1.210 1.392 4.746 2.195 2.041 6.412 0.769 5.934 12.347 1.315 1.303 5.924 1.596 +Negative Pairs Distance +20.166 23.190 19.774 17.923 13.037 21.200 22.463 14.820 14.639 14.424 20.394 15.858 17.843 19.721 9.291 13.911 6.487 18.521 16.954 15.071 21.124 3.136 21.915 26.672 10.117 19.504 16.569 15.500 19.505 14.488 12.333 11.741 diff --git a/checkpoints/kit/text_mot_match/eval/E085.txt b/checkpoints/kit/text_mot_match/eval/E085.txt new file mode 100644 index 0000000000000000000000000000000000000000..b2551ed6523aac568cc7e77cab1147309c2899d9 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E085.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.160 1.123 0.681 0.707 2.277 2.063 2.552 1.243 3.954 3.408 1.125 1.530 3.594 1.932 1.488 1.558 1.368 1.740 4.621 0.844 1.054 1.013 1.795 0.552 2.498 0.922 2.624 0.899 1.455 1.543 1.219 2.387 +Negative Pairs Distance +12.292 15.500 11.375 14.608 23.654 3.728 2.467 13.880 16.046 21.566 21.143 17.623 4.482 17.418 22.232 17.313 26.219 22.449 13.927 21.166 10.767 5.275 1.208 22.217 2.804 21.347 16.782 18.786 19.475 19.334 14.207 16.465 diff --git a/checkpoints/kit/text_mot_match/eval/E090.txt b/checkpoints/kit/text_mot_match/eval/E090.txt new file mode 100644 index 0000000000000000000000000000000000000000..033f17f0f3f22f9c4256c45eaeda8a33a658d0aa --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E090.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.012 2.578 5.767 1.255 0.855 2.173 4.103 1.101 13.313 17.991 1.063 1.962 0.998 2.235 3.338 1.534 4.680 0.950 1.804 1.357 1.058 0.933 1.001 5.634 3.647 1.667 2.159 12.595 2.218 3.775 2.603 1.347 +Negative Pairs Distance +1.622 24.847 4.103 23.529 12.966 16.220 3.390 10.709 17.506 5.613 9.319 21.534 20.392 18.943 14.061 8.722 18.443 16.522 19.102 12.086 23.014 25.803 15.898 6.899 19.726 23.200 19.056 8.438 20.097 16.868 14.529 12.901 diff --git a/checkpoints/kit/text_mot_match/eval/E095.txt b/checkpoints/kit/text_mot_match/eval/E095.txt new file mode 100644 index 0000000000000000000000000000000000000000..92661ae9c2d09cc75e0339206a9d59d65b52ed16 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E095.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.957 5.130 1.610 0.692 0.973 2.350 1.095 0.812 10.008 2.255 1.878 2.190 4.425 1.911 1.336 4.439 0.943 10.657 1.138 1.613 2.040 5.536 1.493 0.938 0.889 1.510 8.307 3.408 2.917 3.500 2.125 2.211 +Negative Pairs Distance +13.302 14.787 22.667 23.635 20.254 23.571 8.536 14.727 18.053 16.699 12.599 14.799 15.496 9.799 9.621 16.289 1.345 13.394 17.885 21.358 23.233 18.082 17.676 13.628 11.943 12.769 29.724 28.740 23.942 21.485 16.927 12.710 diff --git a/checkpoints/kit/text_mot_match/eval/E100.txt b/checkpoints/kit/text_mot_match/eval/E100.txt new file mode 100644 index 0000000000000000000000000000000000000000..7add05f6c9371feeb3e64cb137c006aafa385f72 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E100.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +15.756 1.123 4.602 0.836 2.995 0.605 1.258 4.576 5.112 0.662 0.605 2.008 1.062 1.816 0.632 9.981 1.660 0.973 0.711 2.293 1.124 5.743 1.202 4.518 1.711 4.652 0.785 0.745 0.526 3.104 1.319 4.840 +Negative Pairs Distance +10.425 22.640 4.875 19.405 11.291 16.246 17.498 23.780 22.589 10.619 8.373 9.351 16.751 14.980 22.690 22.484 12.499 24.838 24.494 23.126 14.764 12.877 10.966 11.744 22.366 10.996 14.653 5.500 18.956 24.887 14.791 15.646 diff --git a/checkpoints/kit/text_mot_match/eval/E105.txt b/checkpoints/kit/text_mot_match/eval/E105.txt new file mode 100644 index 0000000000000000000000000000000000000000..d4899ef778ce145193f11930366650f521d3f8a3 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E105.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.089 2.387 6.936 1.425 1.880 2.587 1.990 1.701 1.069 0.980 1.417 9.058 1.353 1.204 2.475 2.691 0.932 2.726 1.296 1.698 6.379 1.387 15.032 1.641 3.618 1.276 1.370 3.261 0.990 7.931 2.744 3.607 +Negative Pairs Distance +18.003 20.362 11.659 15.585 13.766 14.232 21.723 4.696 8.918 19.056 13.097 24.289 12.855 17.362 22.556 10.135 14.734 14.375 14.859 16.949 9.689 14.875 15.761 10.648 13.664 18.514 11.027 11.611 18.166 5.020 17.382 17.951 diff --git a/checkpoints/kit/text_mot_match/eval/E110.txt b/checkpoints/kit/text_mot_match/eval/E110.txt new file mode 100644 index 0000000000000000000000000000000000000000..7e3b225980e062ecdcc0ae6e62acaca9c2029acb --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E110.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +4.594 16.486 2.173 5.006 0.736 5.348 2.516 1.424 1.905 1.518 4.290 0.630 1.854 0.662 6.736 1.189 3.855 0.870 3.669 0.790 0.969 2.029 2.629 1.290 1.532 7.682 6.683 0.917 4.618 6.050 3.025 0.723 +Negative Pairs Distance +12.923 22.179 24.706 19.398 9.272 7.455 13.993 6.839 13.685 16.117 14.054 19.742 5.135 15.211 10.941 18.224 11.478 16.176 10.114 18.356 20.260 16.683 27.581 13.941 8.018 7.124 12.105 17.994 0.854 15.453 12.923 15.096 diff --git a/checkpoints/kit/text_mot_match/eval/E115.txt b/checkpoints/kit/text_mot_match/eval/E115.txt new file mode 100644 index 0000000000000000000000000000000000000000..512bdf9dcaa46beb91729317b83664963fb20ac2 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E115.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +4.260 5.487 7.693 4.676 1.321 1.041 1.544 1.485 9.702 1.870 2.287 3.421 4.685 3.229 8.235 4.715 2.157 2.155 11.826 1.385 13.426 1.473 6.342 1.925 6.983 2.693 0.856 1.752 5.750 2.104 2.385 4.791 +Negative Pairs Distance +20.920 17.386 17.106 6.395 14.940 9.904 15.653 8.603 12.403 25.547 25.790 4.830 15.455 18.065 3.405 14.249 26.497 8.641 10.089 12.739 22.130 18.371 10.461 19.548 15.514 18.363 10.790 9.796 13.923 19.527 2.634 12.634 diff --git a/checkpoints/kit/text_mot_match/eval/E120.txt b/checkpoints/kit/text_mot_match/eval/E120.txt new file mode 100644 index 0000000000000000000000000000000000000000..a759c688d4950c7ef6962a7794a2e98e36a228a2 --- /dev/null +++ b/checkpoints/kit/text_mot_match/eval/E120.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.613 10.684 3.614 1.907 1.610 1.017 3.122 1.261 3.162 0.933 1.599 2.377 0.762 1.865 2.864 1.124 1.034 3.213 2.520 1.569 0.995 0.759 4.635 5.838 0.870 1.485 1.530 2.547 8.226 2.399 1.487 3.931 +Negative Pairs Distance +18.579 23.097 22.131 12.888 30.161 26.140 12.161 25.980 13.960 24.155 2.520 6.033 26.685 7.331 8.465 16.310 24.265 19.109 19.149 16.481 14.715 17.881 20.127 13.153 4.347 20.907 20.906 8.501 15.853 23.314 15.491 25.455 diff --git a/checkpoints/kit/text_mot_match/model/finest.tar b/checkpoints/kit/text_mot_match/model/finest.tar new file mode 100644 index 0000000000000000000000000000000000000000..94a04eafa04439c43aa04f31c08e98c6c0d1041e --- /dev/null +++ b/checkpoints/kit/text_mot_match/model/finest.tar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f786d733ca1bfa5dc1474554f167e1f608ec629868061e51ccfdb812ea61e6a +size 245481907 diff --git a/checkpoints/t2m/Comp_v6_KLD005/meta/mean.npy b/checkpoints/t2m/Comp_v6_KLD005/meta/mean.npy new file mode 100644 index 0000000000000000000000000000000000000000..6c57414d9cf6242bb4b4bab4c33df5e2cc9d2f91 --- /dev/null +++ b/checkpoints/t2m/Comp_v6_KLD005/meta/mean.npy @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bdb5ba69a3a9e34d71990db15bc535ebc024c8d95ddb5574196f96058faa7d3 +size 2232 diff --git a/checkpoints/t2m/Comp_v6_KLD005/meta/std.npy b/checkpoints/t2m/Comp_v6_KLD005/meta/std.npy new file mode 100644 index 0000000000000000000000000000000000000000..93c6b7ae4c2fa23dd21c10a27da1b6966168b35b --- /dev/null +++ b/checkpoints/t2m/Comp_v6_KLD005/meta/std.npy @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a5f7d60301c9465972fc225f8ad0ee8f957e7720431189123eb6d15873a9557 +size 2232 diff --git a/checkpoints/t2m/Comp_v6_KLD005/opt.txt b/checkpoints/t2m/Comp_v6_KLD005/opt.txt new file mode 100644 index 0000000000000000000000000000000000000000..60dbbc6631b33cec455305c6d7c79e705b874e46 --- /dev/null +++ b/checkpoints/t2m/Comp_v6_KLD005/opt.txt @@ -0,0 +1,54 @@ +------------ Options ------------- +batch_size: 32 +checkpoints_dir: ./checkpoints +dataset_name: t2m +decomp_name: Decomp_SP001_SM001_H512 +dim_att_vec: 512 +dim_dec_hidden: 1024 +dim_movement2_dec_hidden: 512 +dim_movement_dec_hidden: 512 +dim_movement_enc_hidden: 512 +dim_movement_latent: 512 +dim_msd_hidden: 512 +dim_pos_hidden: 1024 +dim_pri_hidden: 1024 +dim_seq_de_hidden: 512 +dim_seq_en_hidden: 512 +dim_text_hidden: 512 +dim_z: 128 +early_stop_count: 3 +estimator_mod: bigru +eval_every_e: 5 +feat_bias: 5 +fixed_steps: 5 +gpu_id: 1 +input_z: False +is_continue: False +is_train: True +lambda_fake: 10 +lambda_gan_l: 0.1 +lambda_gan_mt: 0.1 +lambda_gan_mv: 0.1 +lambda_kld: 0.005 +lambda_rec: 1 +lambda_rec_init: 1 +lambda_rec_mot: 1 +lambda_rec_mov: 1 +log_every: 50 +lr: 0.0002 +max_sub_epoch: 50 +max_text_len: 20 +n_layers_dec: 1 +n_layers_msd: 2 +n_layers_pos: 1 +n_layers_pri: 1 +n_layers_seq_de: 2 +n_layers_seq_en: 1 +name: Comp_v6_KLD005 +num_experts: 4 +save_every_e: 10 +save_latest: 500 +text_enc_mod: bigru +tf_ratio: 0.4 +unit_length: 4 +-------------- End ---------------- diff --git a/checkpoints/t2m/rvq_name/opt.txt b/checkpoints/t2m/rvq_name/opt.txt new file mode 100644 index 0000000000000000000000000000000000000000..7ee9852fd13ba7076415bf36fb25dfebd08986ba --- /dev/null +++ b/checkpoints/t2m/rvq_name/opt.txt @@ -0,0 +1,44 @@ +------------ Options ------------- +batch_size: 256 +checkpoints_dir: ./checkpoints +code_dim: 512 +commit: 0.02 +dataset_name: t2m +depth: 3 +dilation_growth_rate: 3 +do_vq_res: False +down_t: 2 +eval_every_e: 1 +ext: default +feat_bias: 5 +gamma: 0.1 +gpu_id: 0 +is_continue: False +is_train: True +log_every: 10 +loss_vel: 0.5 +lr: 0.0002 +max_epoch: 50 +milestones: [150000, 250000] +mu: 0.99 +n_res: 2 +name: rvq_name +nb_code: 512 +num_quantizers: 6 +output_emb_width: 512 +quantize_dropout_prob: 0.2 +recons_loss: l1_smooth +save_every_e: 2 +save_latest: 500 +seed: 3407 +shared_codebook: False +stride_t: 2 +vq_act: relu +vq_name: rvq_nq6_dc512_nc512_noshare_qdp0.2 +vq_norm: None +warm_up_iter: 2000 +weight_decay: 0.0 +which_epoch: all +width: 512 +window_size: 64 +-------------- End ---------------- diff --git a/checkpoints/t2m/text_mot_match/eval/E005.txt b/checkpoints/t2m/text_mot_match/eval/E005.txt new file mode 100644 index 0000000000000000000000000000000000000000..da88ac7cc321c1422ee8ebe4eb22fd822bb15570 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E005.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +2.138 3.585 6.431 3.316 2.915 3.651 2.846 3.037 6.336 3.522 3.202 2.891 1.960 5.782 1.933 4.873 3.097 3.693 3.603 3.285 2.163 7.284 3.414 1.798 3.902 4.261 5.328 3.147 6.786 7.201 3.807 4.556 1.279 6.056 4.641 1.930 3.137 3.403 4.191 4.825 3.522 1.962 1.947 8.036 3.557 4.207 3.009 2.873 3.439 1.936 9.244 2.556 3.661 2.426 3.827 2.633 4.978 3.241 1.883 4.369 1.605 6.167 3.187 2.980 +Negative Pairs Distance +7.684 7.251 7.515 13.336 11.317 8.791 11.320 7.274 7.530 10.009 10.813 8.484 8.580 8.130 6.765 8.351 8.458 4.622 10.156 8.999 7.133 5.604 6.739 6.342 4.268 10.279 3.411 8.958 5.971 11.234 6.465 9.877 6.681 3.099 7.299 3.563 9.506 7.835 4.392 5.835 5.587 11.703 7.469 5.336 11.653 9.488 9.204 10.227 8.903 11.845 8.152 11.568 5.678 11.725 11.399 7.016 7.917 7.193 11.800 10.289 8.340 6.820 14.050 7.414 diff --git a/checkpoints/t2m/text_mot_match/eval/E010.txt b/checkpoints/t2m/text_mot_match/eval/E010.txt new file mode 100644 index 0000000000000000000000000000000000000000..b8c52011531546d2bdc72aa5d1171f5dd4eba0e0 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E010.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +2.368 0.934 3.339 2.851 7.548 4.274 4.616 3.087 5.109 3.182 2.390 3.640 1.201 2.870 2.700 4.310 2.962 1.834 2.689 1.684 5.466 4.030 1.856 2.129 2.856 2.080 1.374 1.521 1.930 4.614 4.484 1.493 2.287 3.146 3.296 3.164 1.294 6.759 1.899 1.356 1.339 1.435 2.758 1.028 2.244 3.313 1.439 1.873 5.779 6.083 6.621 2.469 3.199 1.684 1.338 4.343 1.805 1.842 2.437 1.985 2.152 1.773 1.916 2.397 +Negative Pairs Distance +3.371 6.222 12.795 11.448 11.061 5.772 10.886 9.773 9.096 3.671 7.492 9.996 10.521 10.957 11.268 5.102 12.331 8.901 13.735 13.542 6.837 9.248 12.835 9.278 7.703 10.815 14.478 5.701 7.244 8.938 3.909 13.006 8.206 12.380 7.833 10.313 11.688 9.678 15.328 10.780 6.664 5.745 3.885 11.306 8.481 3.590 3.059 10.034 7.081 7.480 10.011 2.261 4.195 12.070 6.496 1.780 10.264 8.738 12.774 12.661 3.845 2.913 5.139 10.449 diff --git a/checkpoints/t2m/text_mot_match/eval/E015.txt b/checkpoints/t2m/text_mot_match/eval/E015.txt new file mode 100644 index 0000000000000000000000000000000000000000..dc474351b6bd2ff756b1a7064412303a97eeb327 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E015.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +5.635 4.365 1.758 7.120 2.122 5.028 3.057 1.999 1.407 1.492 1.576 3.012 2.568 1.865 3.120 4.290 6.581 1.971 1.502 3.113 4.361 1.652 2.058 7.970 5.700 6.587 1.295 2.932 2.793 4.732 4.453 1.880 5.972 2.598 1.801 2.391 2.672 2.691 2.551 0.991 4.353 2.636 2.225 4.888 5.664 9.172 0.939 0.823 0.978 0.918 2.677 2.839 0.878 5.426 5.099 1.188 2.365 3.993 2.732 5.112 4.739 1.685 3.245 2.932 +Negative Pairs Distance +8.349 8.690 8.668 8.618 11.899 5.328 9.142 12.406 11.802 6.766 6.286 6.416 13.772 5.873 5.219 4.214 7.341 11.516 8.086 8.696 8.727 12.731 10.625 9.442 11.745 10.770 8.947 9.977 10.015 5.765 11.373 12.010 7.621 4.839 13.131 11.073 11.632 10.954 2.635 12.538 8.563 2.470 6.850 6.131 8.921 11.868 9.324 7.270 3.399 3.792 11.799 6.229 14.861 10.649 4.161 10.082 4.159 9.676 8.362 10.114 14.197 12.460 2.946 11.656 diff --git a/checkpoints/t2m/text_mot_match/eval/E020.txt b/checkpoints/t2m/text_mot_match/eval/E020.txt new file mode 100644 index 0000000000000000000000000000000000000000..f2d9cda2be6da7e7053dbb0aeac57750d7995e78 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E020.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.639 2.593 4.484 3.229 1.908 3.809 5.975 1.788 2.816 1.236 2.470 4.534 4.969 4.274 1.663 3.368 2.780 7.354 3.718 4.035 6.723 3.376 2.353 3.740 1.692 3.493 1.461 0.775 1.864 1.333 2.718 2.153 2.152 2.403 4.073 1.636 3.009 4.557 1.290 3.028 6.190 2.665 1.714 2.362 1.464 1.493 1.685 2.305 3.953 3.443 2.440 2.157 7.674 1.337 3.640 0.910 1.613 3.918 1.287 12.478 3.788 2.357 1.609 1.419 +Negative Pairs Distance +7.379 12.135 11.961 8.214 7.093 15.171 5.768 7.391 6.999 5.967 5.915 9.818 15.420 5.949 5.837 9.039 6.797 5.483 9.227 1.807 10.707 8.089 12.895 5.841 9.760 8.882 12.048 11.364 2.663 11.144 12.087 11.463 8.490 7.476 6.095 8.174 14.009 13.326 11.961 10.205 3.341 6.644 9.152 12.635 12.135 11.879 9.290 8.208 10.543 4.041 13.544 15.427 9.436 10.737 13.831 12.030 7.694 4.468 15.355 2.236 4.427 3.901 12.986 14.113 diff --git a/checkpoints/t2m/text_mot_match/eval/E025.txt b/checkpoints/t2m/text_mot_match/eval/E025.txt new file mode 100644 index 0000000000000000000000000000000000000000..c360dd461220727e986167750e6407ee1a0e7a6a --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E025.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +2.160 3.123 2.673 1.274 6.288 3.064 2.156 1.779 1.664 2.188 3.982 5.247 3.170 2.361 4.161 2.367 1.652 2.336 3.467 5.782 5.258 1.314 3.722 5.492 1.663 5.732 2.062 2.351 2.587 1.571 2.409 2.411 6.146 5.193 4.207 3.013 1.431 3.187 1.100 1.344 1.625 3.711 0.917 6.620 4.080 2.230 1.884 1.805 2.046 1.792 1.178 1.756 2.029 3.268 1.328 1.794 1.493 6.562 2.734 2.635 2.326 4.999 1.729 7.867 +Negative Pairs Distance +5.004 5.192 7.421 12.019 11.470 9.982 6.755 9.042 9.402 4.459 10.686 8.709 14.472 10.902 11.827 11.461 9.566 11.826 13.496 11.107 9.148 10.478 13.818 6.955 10.105 5.290 11.824 13.777 6.761 11.292 17.203 10.521 10.090 13.692 11.677 10.680 10.203 6.210 12.732 9.553 12.763 11.885 4.563 12.447 6.661 6.581 3.495 8.131 10.747 10.149 11.988 11.166 2.840 12.352 14.597 7.480 8.204 10.761 2.073 8.824 14.124 9.904 8.432 10.644 diff --git a/checkpoints/t2m/text_mot_match/eval/E030.txt b/checkpoints/t2m/text_mot_match/eval/E030.txt new file mode 100644 index 0000000000000000000000000000000000000000..de9b4ba8f1bf25c93e6ae21cb4e151ae0c9828a9 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E030.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +5.769 2.701 5.603 3.461 3.501 2.584 5.095 2.065 1.358 2.446 4.603 2.641 2.895 1.471 2.466 1.607 0.930 1.819 1.353 3.113 7.465 4.344 3.375 4.831 1.779 2.750 2.875 2.941 2.247 0.988 1.050 2.338 3.626 1.762 0.796 2.131 1.694 1.386 2.158 3.976 2.969 1.641 2.860 1.886 1.497 1.490 1.896 3.927 1.520 1.449 1.085 3.901 3.171 4.814 2.366 2.735 5.815 1.122 1.129 4.953 1.609 5.023 2.228 2.773 +Negative Pairs Distance +11.844 13.121 7.596 12.851 13.889 11.492 9.487 2.997 13.484 7.261 1.788 9.130 9.110 7.852 8.295 9.320 11.202 11.790 13.054 9.690 12.577 3.168 6.269 10.308 11.983 5.900 10.662 11.556 13.187 13.133 12.790 9.736 7.152 12.138 10.264 13.381 10.001 11.219 9.328 10.502 12.704 7.180 10.973 9.989 10.436 4.979 14.441 5.024 11.842 11.142 16.077 6.655 13.333 8.766 14.357 13.773 7.105 11.169 9.949 9.969 12.078 12.049 9.408 13.646 diff --git a/checkpoints/t2m/text_mot_match/eval/E035.txt b/checkpoints/t2m/text_mot_match/eval/E035.txt new file mode 100644 index 0000000000000000000000000000000000000000..71caa1d7562aba07f6b71afce954e23c1f45a03a --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E035.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +3.015 2.759 7.591 6.053 3.381 2.494 4.691 1.533 2.759 2.886 4.554 3.377 1.076 1.264 2.097 1.899 10.654 3.292 5.365 1.063 1.628 5.412 6.907 2.985 7.071 3.881 1.433 4.854 1.252 2.352 5.969 5.683 5.698 1.381 1.272 1.471 2.439 3.102 1.047 4.069 0.912 0.682 4.318 7.923 1.435 2.243 1.504 4.846 1.574 1.434 1.413 2.317 4.098 1.012 7.257 0.815 1.268 1.275 1.205 6.220 1.553 3.097 1.121 4.317 +Negative Pairs Distance +8.111 10.381 8.601 8.611 10.391 14.334 8.258 12.430 1.033 9.069 7.270 15.955 9.880 6.052 9.510 8.462 11.041 16.363 12.415 10.365 14.795 9.277 11.011 9.625 5.031 11.133 7.795 5.386 13.971 9.357 11.929 6.353 6.024 10.256 11.845 13.513 6.557 6.254 13.107 9.092 13.515 6.420 1.810 12.100 5.244 12.693 13.093 6.583 12.862 12.863 8.406 15.206 7.722 12.308 11.860 15.117 12.917 9.394 14.406 6.435 12.583 10.266 9.806 7.909 diff --git a/checkpoints/t2m/text_mot_match/eval/E040.txt b/checkpoints/t2m/text_mot_match/eval/E040.txt new file mode 100644 index 0000000000000000000000000000000000000000..efd8b4292c071e5880faa01cb118e002380630df --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E040.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.091 3.158 7.683 7.239 1.099 3.226 2.940 3.941 2.575 3.817 3.114 9.059 3.588 8.397 4.210 0.761 3.761 1.051 2.982 1.111 2.080 2.381 0.834 2.018 0.626 0.741 2.794 2.219 2.869 1.454 1.465 2.574 3.113 2.554 1.089 2.221 1.143 3.417 7.127 2.091 1.884 7.085 2.724 4.812 1.123 1.671 2.098 1.180 1.987 2.836 2.942 1.101 1.353 1.907 4.502 1.756 1.712 3.689 3.915 3.732 1.178 4.434 1.426 4.765 +Negative Pairs Distance +7.758 7.423 12.026 11.045 4.614 18.689 9.143 7.832 7.377 5.228 5.019 13.617 9.827 6.091 9.724 5.717 4.499 10.508 15.079 12.134 8.691 10.813 18.536 12.898 14.130 12.709 6.524 14.031 8.108 8.034 18.086 14.097 6.817 13.653 4.394 15.235 13.638 12.487 12.820 14.682 11.744 11.734 15.113 12.353 15.548 7.648 11.888 8.054 4.929 10.516 5.412 15.665 2.656 9.560 6.485 8.409 15.143 14.369 11.108 12.582 8.295 13.409 8.260 15.920 diff --git a/checkpoints/t2m/text_mot_match/eval/E045.txt b/checkpoints/t2m/text_mot_match/eval/E045.txt new file mode 100644 index 0000000000000000000000000000000000000000..4ab7de9edc64b7182e738a1e8899f369758c46c0 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E045.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.229 5.692 8.703 1.241 3.887 1.769 2.470 8.832 1.336 1.730 1.015 2.745 2.991 3.538 2.202 2.632 4.694 6.508 2.805 2.564 1.648 1.522 4.542 3.489 5.952 3.880 0.938 7.360 6.155 3.456 4.902 0.875 1.802 1.712 2.043 0.982 9.952 2.507 6.213 1.753 2.948 1.832 1.512 1.218 1.036 7.176 9.888 3.051 1.263 2.009 0.868 4.171 3.859 2.438 8.382 7.390 5.269 6.246 3.971 3.855 5.653 4.777 1.835 4.219 +Negative Pairs Distance +7.079 3.908 9.954 15.469 17.535 17.224 11.547 10.721 14.723 13.506 11.699 13.040 13.515 15.012 10.038 12.103 11.218 9.423 9.647 15.224 15.121 9.937 11.791 13.358 11.099 13.063 11.833 8.263 13.041 13.143 6.902 10.864 10.572 16.783 14.272 7.396 12.496 12.448 7.637 15.296 14.801 8.080 11.159 12.617 9.477 10.468 5.623 12.924 12.892 15.975 11.561 12.399 15.255 10.662 10.685 8.176 12.925 9.704 5.554 14.692 9.740 16.954 15.803 4.117 diff --git a/checkpoints/t2m/text_mot_match/eval/E050.txt b/checkpoints/t2m/text_mot_match/eval/E050.txt new file mode 100644 index 0000000000000000000000000000000000000000..38735137fad030149161f1a71d2e233409aacf94 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E050.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.988 8.534 3.090 1.506 0.546 3.149 2.591 1.457 2.084 2.224 2.506 7.658 1.488 5.345 8.596 3.019 1.280 1.224 3.789 2.969 4.153 3.922 3.468 2.677 0.549 2.438 2.397 1.058 0.694 4.246 2.182 9.738 3.974 4.391 3.852 0.978 1.228 1.394 1.914 5.302 2.232 2.375 1.958 0.804 3.267 4.355 1.425 1.856 2.107 2.300 1.773 1.005 1.508 2.442 2.032 1.787 5.650 1.220 1.837 0.949 0.894 2.533 1.709 2.203 +Negative Pairs Distance +10.846 1.982 10.140 14.580 8.048 10.215 8.266 11.341 15.567 14.373 12.174 9.238 10.762 11.636 9.484 17.984 15.269 10.753 12.488 14.978 12.295 16.706 5.277 12.151 17.022 12.385 11.328 11.967 2.335 7.675 11.572 10.201 4.607 12.996 4.525 10.899 7.531 18.636 10.677 6.494 5.820 15.886 13.994 6.347 9.459 12.818 8.411 10.870 11.731 11.338 13.900 10.221 11.980 1.934 15.422 14.012 10.747 13.300 9.517 8.904 13.915 1.789 2.982 1.413 diff --git a/checkpoints/t2m/text_mot_match/eval/E055.txt b/checkpoints/t2m/text_mot_match/eval/E055.txt new file mode 100644 index 0000000000000000000000000000000000000000..63a6829ff2d5b6ef908b4bf09e4e7f294a6a12e9 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E055.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.247 3.241 3.085 5.559 3.278 3.504 1.281 5.672 3.510 2.796 2.979 4.566 1.734 1.347 6.664 1.833 1.697 3.458 2.551 9.985 10.803 6.760 4.255 2.079 1.631 3.465 3.195 1.208 7.328 2.997 3.596 3.009 2.351 0.688 2.198 0.714 5.610 3.208 4.415 2.061 7.265 3.046 1.876 6.715 1.057 1.153 1.743 1.395 2.131 9.693 1.005 1.567 2.103 6.292 2.028 7.331 5.032 4.028 1.292 0.818 1.527 1.678 2.556 0.867 +Negative Pairs Distance +14.511 9.498 16.638 16.673 10.296 8.035 17.646 12.668 7.180 14.810 9.057 14.211 15.495 19.012 16.264 7.727 9.027 14.481 16.910 10.368 11.140 12.842 10.332 12.354 12.907 7.463 6.222 12.132 10.834 9.261 9.624 13.718 12.051 7.325 15.345 9.044 8.045 12.457 18.816 16.320 8.970 10.849 10.921 8.175 14.154 10.171 15.705 13.980 12.632 9.271 10.276 11.752 2.374 14.594 5.849 13.037 14.157 15.233 6.680 15.071 5.267 12.505 11.125 3.867 diff --git a/checkpoints/t2m/text_mot_match/eval/E060.txt b/checkpoints/t2m/text_mot_match/eval/E060.txt new file mode 100644 index 0000000000000000000000000000000000000000..238f20dd6a62cfcfb314136bdb400f12eac1e02f --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E060.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.571 3.172 3.770 6.891 1.110 3.114 3.619 3.150 1.262 6.529 4.463 4.225 5.661 5.912 4.149 2.940 9.289 7.502 2.964 7.934 7.892 5.132 3.372 1.158 6.199 1.755 6.693 0.522 2.561 1.416 2.467 1.345 1.360 1.891 0.808 2.498 1.168 11.367 3.967 3.431 3.801 1.861 2.445 1.447 2.009 2.472 1.948 9.499 1.691 4.722 3.623 3.838 3.500 1.745 2.601 3.980 19.218 1.161 1.571 1.538 7.614 1.686 1.418 2.417 +Negative Pairs Distance +15.205 9.554 11.487 13.266 9.290 10.822 5.869 8.203 13.700 19.719 13.312 16.096 14.656 7.966 11.607 3.485 11.916 8.236 6.717 7.925 6.734 1.869 18.321 15.154 9.075 10.759 17.043 12.206 8.155 10.869 14.378 14.693 17.704 13.448 10.575 10.083 13.297 7.200 2.820 19.810 6.688 13.021 8.660 10.767 15.229 3.664 7.361 9.993 17.893 16.826 4.853 15.858 14.397 14.958 18.753 3.740 17.193 14.761 4.684 2.199 0.761 13.513 15.111 9.980 diff --git a/checkpoints/t2m/text_mot_match/eval/E065.txt b/checkpoints/t2m/text_mot_match/eval/E065.txt new file mode 100644 index 0000000000000000000000000000000000000000..9491e7e48b1ef5b2aa345f5e22625a55b81a8294 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/eval/E065.txt @@ -0,0 +1,4 @@ +Positive Pairs Distance +1.821 4.602 9.136 3.300 3.030 1.740 7.195 10.091 4.127 4.261 1.426 2.511 4.678 5.995 5.595 2.785 3.611 2.750 4.556 7.711 6.414 1.103 3.895 1.124 2.847 4.151 4.704 2.167 2.516 1.597 1.929 5.132 3.719 1.242 6.461 6.859 3.773 3.677 1.577 4.945 2.503 3.095 1.506 0.751 4.509 1.872 4.824 2.245 1.306 9.266 0.942 2.404 1.344 5.370 1.152 1.168 4.441 0.794 6.156 6.850 0.889 4.267 5.453 2.151 +Negative Pairs Distance +9.036 8.566 7.917 7.361 11.749 12.500 1.821 8.546 7.947 12.707 12.843 10.910 10.224 11.762 12.532 1.876 13.910 2.037 11.209 3.440 10.596 16.970 12.220 20.303 9.081 13.592 11.262 16.952 9.275 15.577 8.602 18.846 5.810 16.134 13.466 5.151 10.245 10.762 19.059 9.957 19.297 12.843 14.996 11.706 13.075 12.213 8.424 12.102 18.664 10.109 13.605 10.163 18.571 10.603 8.859 13.348 7.331 17.438 10.662 8.789 16.400 17.771 20.599 14.529 diff --git a/checkpoints/t2m/text_mot_match/model/finest.tar b/checkpoints/t2m/text_mot_match/model/finest.tar new file mode 100644 index 0000000000000000000000000000000000000000..5a5ab3f46e3c42bb80835eb0f42dcb6cb813ccf9 --- /dev/null +++ b/checkpoints/t2m/text_mot_match/model/finest.tar @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:881e45bea6fb84b15eca6e7cdd75d602b58a72f2038c223ee96ab75d4f684ada +size 245580211 diff --git a/common/__init__.py b/common/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/common/__pycache__/__init__.cpython-310.pyc b/common/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e1b46f73f9bbe817a7ab4dc5ab55c5b236ad2a2c Binary files /dev/null and b/common/__pycache__/__init__.cpython-310.pyc differ diff --git a/common/__pycache__/quaternion.cpython-310.pyc b/common/__pycache__/quaternion.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e24397c862f0f86dbe470662b704b1f4f38b8f21 Binary files /dev/null and b/common/__pycache__/quaternion.cpython-310.pyc differ diff --git a/common/__pycache__/skeleton.cpython-310.pyc b/common/__pycache__/skeleton.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ea0b0fd4e717d30a488d8814ce4d3c097d37533a Binary files /dev/null and b/common/__pycache__/skeleton.cpython-310.pyc differ diff --git a/common/quaternion.py b/common/quaternion.py new file mode 100644 index 0000000000000000000000000000000000000000..5051507c044d1bcd9e51b21af02f18113f3c4dad --- /dev/null +++ b/common/quaternion.py @@ -0,0 +1,423 @@ +# Copyright (c) 2018-present, Facebook, Inc. +# All rights reserved. +# +# This source code is licensed under the license found in the +# LICENSE file in the root directory of this source tree. +# + +import torch +import numpy as np + +_EPS4 = np.finfo(float).eps * 4.0 + +_FLOAT_EPS = np.finfo(float).eps + +# PyTorch-backed implementations +def qinv(q): + assert q.shape[-1] == 4, 'q must be a tensor of shape (*, 4)' + mask = torch.ones_like(q) + mask[..., 1:] = -mask[..., 1:] + return q * mask + + +def qinv_np(q): + assert q.shape[-1] == 4, 'q must be a tensor of shape (*, 4)' + return qinv(torch.from_numpy(q).float()).numpy() + + +def qnormalize(q): + assert q.shape[-1] == 4, 'q must be a tensor of shape (*, 4)' + return q / torch.norm(q, dim=-1, keepdim=True) + + +def qmul(q, r): + """ + Multiply quaternion(s) q with quaternion(s) r. + Expects two equally-sized tensors of shape (*, 4), where * denotes any number of dimensions. + Returns q*r as a tensor of shape (*, 4). + """ + assert q.shape[-1] == 4 + assert r.shape[-1] == 4 + + original_shape = q.shape + + # Compute outer product + terms = torch.bmm(r.view(-1, 4, 1), q.view(-1, 1, 4)) + + w = terms[:, 0, 0] - terms[:, 1, 1] - terms[:, 2, 2] - terms[:, 3, 3] + x = terms[:, 0, 1] + terms[:, 1, 0] - terms[:, 2, 3] + terms[:, 3, 2] + y = terms[:, 0, 2] + terms[:, 1, 3] + terms[:, 2, 0] - terms[:, 3, 1] + z = terms[:, 0, 3] - terms[:, 1, 2] + terms[:, 2, 1] + terms[:, 3, 0] + return torch.stack((w, x, y, z), dim=1).view(original_shape) + + +def qrot(q, v): + """ + Rotate vector(s) v about the rotation described by quaternion(s) q. + Expects a tensor of shape (*, 4) for q and a tensor of shape (*, 3) for v, + where * denotes any number of dimensions. + Returns a tensor of shape (*, 3). + """ + assert q.shape[-1] == 4 + assert v.shape[-1] == 3 + assert q.shape[:-1] == v.shape[:-1] + + original_shape = list(v.shape) + # print(q.shape) + q = q.contiguous().view(-1, 4) + v = v.contiguous().view(-1, 3) + + qvec = q[:, 1:] + uv = torch.cross(qvec, v, dim=1) + uuv = torch.cross(qvec, uv, dim=1) + return (v + 2 * (q[:, :1] * uv + uuv)).view(original_shape) + + +def qeuler(q, order, epsilon=0, deg=True): + """ + Convert quaternion(s) q to Euler angles. + Expects a tensor of shape (*, 4), where * denotes any number of dimensions. + Returns a tensor of shape (*, 3). + """ + assert q.shape[-1] == 4 + + original_shape = list(q.shape) + original_shape[-1] = 3 + q = q.view(-1, 4) + + q0 = q[:, 0] + q1 = q[:, 1] + q2 = q[:, 2] + q3 = q[:, 3] + + if order == 'xyz': + x = torch.atan2(2 * (q0 * q1 - q2 * q3), 1 - 2 * (q1 * q1 + q2 * q2)) + y = torch.asin(torch.clamp(2 * (q1 * q3 + q0 * q2), -1 + epsilon, 1 - epsilon)) + z = torch.atan2(2 * (q0 * q3 - q1 * q2), 1 - 2 * (q2 * q2 + q3 * q3)) + elif order == 'yzx': + x = torch.atan2(2 * (q0 * q1 - q2 * q3), 1 - 2 * (q1 * q1 + q3 * q3)) + y = torch.atan2(2 * (q0 * q2 - q1 * q3), 1 - 2 * (q2 * q2 + q3 * q3)) + z = torch.asin(torch.clamp(2 * (q1 * q2 + q0 * q3), -1 + epsilon, 1 - epsilon)) + elif order == 'zxy': + x = torch.asin(torch.clamp(2 * (q0 * q1 + q2 * q3), -1 + epsilon, 1 - epsilon)) + y = torch.atan2(2 * (q0 * q2 - q1 * q3), 1 - 2 * (q1 * q1 + q2 * q2)) + z = torch.atan2(2 * (q0 * q3 - q1 * q2), 1 - 2 * (q1 * q1 + q3 * q3)) + elif order == 'xzy': + x = torch.atan2(2 * (q0 * q1 + q2 * q3), 1 - 2 * (q1 * q1 + q3 * q3)) + y = torch.atan2(2 * (q0 * q2 + q1 * q3), 1 - 2 * (q2 * q2 + q3 * q3)) + z = torch.asin(torch.clamp(2 * (q0 * q3 - q1 * q2), -1 + epsilon, 1 - epsilon)) + elif order == 'yxz': + x = torch.asin(torch.clamp(2 * (q0 * q1 - q2 * q3), -1 + epsilon, 1 - epsilon)) + y = torch.atan2(2 * (q1 * q3 + q0 * q2), 1 - 2 * (q1 * q1 + q2 * q2)) + z = torch.atan2(2 * (q1 * q2 + q0 * q3), 1 - 2 * (q1 * q1 + q3 * q3)) + elif order == 'zyx': + x = torch.atan2(2 * (q0 * q1 + q2 * q3), 1 - 2 * (q1 * q1 + q2 * q2)) + y = torch.asin(torch.clamp(2 * (q0 * q2 - q1 * q3), -1 + epsilon, 1 - epsilon)) + z = torch.atan2(2 * (q0 * q3 + q1 * q2), 1 - 2 * (q2 * q2 + q3 * q3)) + else: + raise + + if deg: + return torch.stack((x, y, z), dim=1).view(original_shape) * 180 / np.pi + else: + return torch.stack((x, y, z), dim=1).view(original_shape) + + +# Numpy-backed implementations + +def qmul_np(q, r): + q = torch.from_numpy(q).contiguous().float() + r = torch.from_numpy(r).contiguous().float() + return qmul(q, r).numpy() + + +def qrot_np(q, v): + q = torch.from_numpy(q).contiguous().float() + v = torch.from_numpy(v).contiguous().float() + return qrot(q, v).numpy() + + +def qeuler_np(q, order, epsilon=0, use_gpu=False): + if use_gpu: + q = torch.from_numpy(q).cuda().float() + return qeuler(q, order, epsilon).cpu().numpy() + else: + q = torch.from_numpy(q).contiguous().float() + return qeuler(q, order, epsilon).numpy() + + +def qfix(q): + """ + Enforce quaternion continuity across the time dimension by selecting + the representation (q or -q) with minimal distance (or, equivalently, maximal dot product) + between two consecutive frames. + + Expects a tensor of shape (L, J, 4), where L is the sequence length and J is the number of joints. + Returns a tensor of the same shape. + """ + assert len(q.shape) == 3 + assert q.shape[-1] == 4 + + result = q.copy() + dot_products = np.sum(q[1:] * q[:-1], axis=2) + mask = dot_products < 0 + mask = (np.cumsum(mask, axis=0) % 2).astype(bool) + result[1:][mask] *= -1 + return result + + +def euler2quat(e, order, deg=True): + """ + Convert Euler angles to quaternions. + """ + assert e.shape[-1] == 3 + + original_shape = list(e.shape) + original_shape[-1] = 4 + + e = e.view(-1, 3) + + ## if euler angles in degrees + if deg: + e = e * np.pi / 180. + + x = e[:, 0] + y = e[:, 1] + z = e[:, 2] + + rx = torch.stack((torch.cos(x / 2), torch.sin(x / 2), torch.zeros_like(x), torch.zeros_like(x)), dim=1) + ry = torch.stack((torch.cos(y / 2), torch.zeros_like(y), torch.sin(y / 2), torch.zeros_like(y)), dim=1) + rz = torch.stack((torch.cos(z / 2), torch.zeros_like(z), torch.zeros_like(z), torch.sin(z / 2)), dim=1) + + result = None + for coord in order: + if coord == 'x': + r = rx + elif coord == 'y': + r = ry + elif coord == 'z': + r = rz + else: + raise + if result is None: + result = r + else: + result = qmul(result, r) + + # Reverse antipodal representation to have a non-negative "w" + if order in ['xyz', 'yzx', 'zxy']: + result *= -1 + + return result.view(original_shape) + + +def expmap_to_quaternion(e): + """ + Convert axis-angle rotations (aka exponential maps) to quaternions. + Stable formula from "Practical Parameterization of Rotations Using the Exponential Map". + Expects a tensor of shape (*, 3), where * denotes any number of dimensions. + Returns a tensor of shape (*, 4). + """ + assert e.shape[-1] == 3 + + original_shape = list(e.shape) + original_shape[-1] = 4 + e = e.reshape(-1, 3) + + theta = np.linalg.norm(e, axis=1).reshape(-1, 1) + w = np.cos(0.5 * theta).reshape(-1, 1) + xyz = 0.5 * np.sinc(0.5 * theta / np.pi) * e + return np.concatenate((w, xyz), axis=1).reshape(original_shape) + + +def euler_to_quaternion(e, order): + """ + Convert Euler angles to quaternions. + """ + assert e.shape[-1] == 3 + + original_shape = list(e.shape) + original_shape[-1] = 4 + + e = e.reshape(-1, 3) + + x = e[:, 0] + y = e[:, 1] + z = e[:, 2] + + rx = np.stack((np.cos(x / 2), np.sin(x / 2), np.zeros_like(x), np.zeros_like(x)), axis=1) + ry = np.stack((np.cos(y / 2), np.zeros_like(y), np.sin(y / 2), np.zeros_like(y)), axis=1) + rz = np.stack((np.cos(z / 2), np.zeros_like(z), np.zeros_like(z), np.sin(z / 2)), axis=1) + + result = None + for coord in order: + if coord == 'x': + r = rx + elif coord == 'y': + r = ry + elif coord == 'z': + r = rz + else: + raise + if result is None: + result = r + else: + result = qmul_np(result, r) + + # Reverse antipodal representation to have a non-negative "w" + if order in ['xyz', 'yzx', 'zxy']: + result *= -1 + + return result.reshape(original_shape) + + +def quaternion_to_matrix(quaternions): + """ + Convert rotations given as quaternions to rotation matrices. + Args: + quaternions: quaternions with real part first, + as tensor of shape (..., 4). + Returns: + Rotation matrices as tensor of shape (..., 3, 3). + """ + r, i, j, k = torch.unbind(quaternions, -1) + two_s = 2.0 / (quaternions * quaternions).sum(-1) + + o = torch.stack( + ( + 1 - two_s * (j * j + k * k), + two_s * (i * j - k * r), + two_s * (i * k + j * r), + two_s * (i * j + k * r), + 1 - two_s * (i * i + k * k), + two_s * (j * k - i * r), + two_s * (i * k - j * r), + two_s * (j * k + i * r), + 1 - two_s * (i * i + j * j), + ), + -1, + ) + return o.reshape(quaternions.shape[:-1] + (3, 3)) + + +def quaternion_to_matrix_np(quaternions): + q = torch.from_numpy(quaternions).contiguous().float() + return quaternion_to_matrix(q).numpy() + + +def quaternion_to_cont6d_np(quaternions): + rotation_mat = quaternion_to_matrix_np(quaternions) + cont_6d = np.concatenate([rotation_mat[..., 0], rotation_mat[..., 1]], axis=-1) + return cont_6d + + +def quaternion_to_cont6d(quaternions): + rotation_mat = quaternion_to_matrix(quaternions) + cont_6d = torch.cat([rotation_mat[..., 0], rotation_mat[..., 1]], dim=-1) + return cont_6d + + +def cont6d_to_matrix(cont6d): + assert cont6d.shape[-1] == 6, "The last dimension must be 6" + x_raw = cont6d[..., 0:3] + y_raw = cont6d[..., 3:6] + + x = x_raw / torch.norm(x_raw, dim=-1, keepdim=True) + z = torch.cross(x, y_raw, dim=-1) + z = z / torch.norm(z, dim=-1, keepdim=True) + + y = torch.cross(z, x, dim=-1) + + x = x[..., None] + y = y[..., None] + z = z[..., None] + + mat = torch.cat([x, y, z], dim=-1) + return mat + + +def cont6d_to_matrix_np(cont6d): + q = torch.from_numpy(cont6d).contiguous().float() + return cont6d_to_matrix(q).numpy() + + +def qpow(q0, t, dtype=torch.float): + ''' q0 : tensor of quaternions + t: tensor of powers + ''' + q0 = qnormalize(q0) + theta0 = torch.acos(q0[..., 0]) + + ## if theta0 is close to zero, add epsilon to avoid NaNs + mask = (theta0 <= 10e-10) * (theta0 >= -10e-10) + theta0 = (1 - mask) * theta0 + mask * 10e-10 + v0 = q0[..., 1:] / torch.sin(theta0).view(-1, 1) + + if isinstance(t, torch.Tensor): + q = torch.zeros(t.shape + q0.shape) + theta = t.view(-1, 1) * theta0.view(1, -1) + else: ## if t is a number + q = torch.zeros(q0.shape) + theta = t * theta0 + + q[..., 0] = torch.cos(theta) + q[..., 1:] = v0 * torch.sin(theta).unsqueeze(-1) + + return q.to(dtype) + + +def qslerp(q0, q1, t): + ''' + q0: starting quaternion + q1: ending quaternion + t: array of points along the way + + Returns: + Tensor of Slerps: t.shape + q0.shape + ''' + + q0 = qnormalize(q0) + q1 = qnormalize(q1) + q_ = qpow(qmul(q1, qinv(q0)), t) + + return qmul(q_, + q0.contiguous().view(torch.Size([1] * len(t.shape)) + q0.shape).expand(t.shape + q0.shape).contiguous()) + + +def qbetween(v0, v1): + ''' + find the quaternion used to rotate v0 to v1 + ''' + assert v0.shape[-1] == 3, 'v0 must be of the shape (*, 3)' + assert v1.shape[-1] == 3, 'v1 must be of the shape (*, 3)' + + v = torch.cross(v0, v1) + w = torch.sqrt((v0 ** 2).sum(dim=-1, keepdim=True) * (v1 ** 2).sum(dim=-1, keepdim=True)) + (v0 * v1).sum(dim=-1, + keepdim=True) + return qnormalize(torch.cat([w, v], dim=-1)) + + +def qbetween_np(v0, v1): + ''' + find the quaternion used to rotate v0 to v1 + ''' + assert v0.shape[-1] == 3, 'v0 must be of the shape (*, 3)' + assert v1.shape[-1] == 3, 'v1 must be of the shape (*, 3)' + + v0 = torch.from_numpy(v0).float() + v1 = torch.from_numpy(v1).float() + return qbetween(v0, v1).numpy() + + +def lerp(p0, p1, t): + if not isinstance(t, torch.Tensor): + t = torch.Tensor([t]) + + new_shape = t.shape + p0.shape + new_view_t = t.shape + torch.Size([1] * len(p0.shape)) + new_view_p = torch.Size([1] * len(t.shape)) + p0.shape + p0 = p0.view(new_view_p).expand(new_shape) + p1 = p1.view(new_view_p).expand(new_shape) + t = t.view(new_view_t).expand(new_shape) + + return p0 + t * (p1 - p0) diff --git a/common/skeleton.py b/common/skeleton.py new file mode 100644 index 0000000000000000000000000000000000000000..62f0c86d8a2a1aff5b163394c794160b0c9cf190 --- /dev/null +++ b/common/skeleton.py @@ -0,0 +1,199 @@ +from common.quaternion import * +import scipy.ndimage.filters as filters + +class Skeleton(object): + def __init__(self, offset, kinematic_tree, device): + self.device = device + self._raw_offset_np = offset.numpy() + self._raw_offset = offset.clone().detach().to(device).float() + self._kinematic_tree = kinematic_tree + self._offset = None + self._parents = [0] * len(self._raw_offset) + self._parents[0] = -1 + for chain in self._kinematic_tree: + for j in range(1, len(chain)): + self._parents[chain[j]] = chain[j-1] + + def njoints(self): + return len(self._raw_offset) + + def offset(self): + return self._offset + + def set_offset(self, offsets): + self._offset = offsets.clone().detach().to(self.device).float() + + def kinematic_tree(self): + return self._kinematic_tree + + def parents(self): + return self._parents + + # joints (batch_size, joints_num, 3) + def get_offsets_joints_batch(self, joints): + assert len(joints.shape) == 3 + _offsets = self._raw_offset.expand(joints.shape[0], -1, -1).clone() + for i in range(1, self._raw_offset.shape[0]): + _offsets[:, i] = torch.norm(joints[:, i] - joints[:, self._parents[i]], p=2, dim=1)[:, None] * _offsets[:, i] + + self._offset = _offsets.detach() + return _offsets + + # joints (joints_num, 3) + def get_offsets_joints(self, joints): + assert len(joints.shape) == 2 + _offsets = self._raw_offset.clone() + for i in range(1, self._raw_offset.shape[0]): + # print(joints.shape) + _offsets[i] = torch.norm(joints[i] - joints[self._parents[i]], p=2, dim=0) * _offsets[i] + + self._offset = _offsets.detach() + return _offsets + + # face_joint_idx should follow the order of right hip, left hip, right shoulder, left shoulder + # joints (batch_size, joints_num, 3) + def inverse_kinematics_np(self, joints, face_joint_idx, smooth_forward=False): + assert len(face_joint_idx) == 4 + '''Get Forward Direction''' + l_hip, r_hip, sdr_r, sdr_l = face_joint_idx + across1 = joints[:, r_hip] - joints[:, l_hip] + across2 = joints[:, sdr_r] - joints[:, sdr_l] + across = across1 + across2 + across = across / np.sqrt((across**2).sum(axis=-1))[:, np.newaxis] + # print(across1.shape, across2.shape) + + # forward (batch_size, 3) + forward = np.cross(np.array([[0, 1, 0]]), across, axis=-1) + if smooth_forward: + forward = filters.gaussian_filter1d(forward, 20, axis=0, mode='nearest') + # forward (batch_size, 3) + forward = forward / np.sqrt((forward**2).sum(axis=-1))[..., np.newaxis] + + '''Get Root Rotation''' + target = np.array([[0,0,1]]).repeat(len(forward), axis=0) + root_quat = qbetween_np(forward, target) + + '''Inverse Kinematics''' + # quat_params (batch_size, joints_num, 4) + # print(joints.shape[:-1]) + quat_params = np.zeros(joints.shape[:-1] + (4,)) + # print(quat_params.shape) + root_quat[0] = np.array([[1.0, 0.0, 0.0, 0.0]]) + quat_params[:, 0] = root_quat + # quat_params[0, 0] = np.array([[1.0, 0.0, 0.0, 0.0]]) + for chain in self._kinematic_tree: + R = root_quat + for j in range(len(chain) - 1): + # (batch, 3) + u = self._raw_offset_np[chain[j+1]][np.newaxis,...].repeat(len(joints), axis=0) + # print(u.shape) + # (batch, 3) + v = joints[:, chain[j+1]] - joints[:, chain[j]] + v = v / np.sqrt((v**2).sum(axis=-1))[:, np.newaxis] + # print(u.shape, v.shape) + rot_u_v = qbetween_np(u, v) + + R_loc = qmul_np(qinv_np(R), rot_u_v) + + quat_params[:,chain[j + 1], :] = R_loc + R = qmul_np(R, R_loc) + + return quat_params + + # Be sure root joint is at the beginning of kinematic chains + def forward_kinematics(self, quat_params, root_pos, skel_joints=None, do_root_R=True): + # quat_params (batch_size, joints_num, 4) + # joints (batch_size, joints_num, 3) + # root_pos (batch_size, 3) + if skel_joints is not None: + offsets = self.get_offsets_joints_batch(skel_joints) + if len(self._offset.shape) == 2: + offsets = self._offset.expand(quat_params.shape[0], -1, -1) + joints = torch.zeros(quat_params.shape[:-1] + (3,)).to(self.device) + joints[:, 0] = root_pos + for chain in self._kinematic_tree: + if do_root_R: + R = quat_params[:, 0] + else: + R = torch.tensor([[1.0, 0.0, 0.0, 0.0]]).expand(len(quat_params), -1).detach().to(self.device) + for i in range(1, len(chain)): + R = qmul(R, quat_params[:, chain[i]]) + offset_vec = offsets[:, chain[i]] + joints[:, chain[i]] = qrot(R, offset_vec) + joints[:, chain[i-1]] + return joints + + # Be sure root joint is at the beginning of kinematic chains + def forward_kinematics_np(self, quat_params, root_pos, skel_joints=None, do_root_R=True): + # quat_params (batch_size, joints_num, 4) + # joints (batch_size, joints_num, 3) + # root_pos (batch_size, 3) + if skel_joints is not None: + skel_joints = torch.from_numpy(skel_joints) + offsets = self.get_offsets_joints_batch(skel_joints) + if len(self._offset.shape) == 2: + offsets = self._offset.expand(quat_params.shape[0], -1, -1) + offsets = offsets.numpy() + joints = np.zeros(quat_params.shape[:-1] + (3,)) + joints[:, 0] = root_pos + for chain in self._kinematic_tree: + if do_root_R: + R = quat_params[:, 0] + else: + R = np.array([[1.0, 0.0, 0.0, 0.0]]).repeat(len(quat_params), axis=0) + for i in range(1, len(chain)): + R = qmul_np(R, quat_params[:, chain[i]]) + offset_vec = offsets[:, chain[i]] + joints[:, chain[i]] = qrot_np(R, offset_vec) + joints[:, chain[i - 1]] + return joints + + def forward_kinematics_cont6d_np(self, cont6d_params, root_pos, skel_joints=None, do_root_R=True): + # cont6d_params (batch_size, joints_num, 6) + # joints (batch_size, joints_num, 3) + # root_pos (batch_size, 3) + if skel_joints is not None: + skel_joints = torch.from_numpy(skel_joints) + offsets = self.get_offsets_joints_batch(skel_joints) + if len(self._offset.shape) == 2: + offsets = self._offset.expand(cont6d_params.shape[0], -1, -1) + offsets = offsets.numpy() + joints = np.zeros(cont6d_params.shape[:-1] + (3,)) + joints[:, 0] = root_pos + for chain in self._kinematic_tree: + if do_root_R: + matR = cont6d_to_matrix_np(cont6d_params[:, 0]) + else: + matR = np.eye(3)[np.newaxis, :].repeat(len(cont6d_params), axis=0) + for i in range(1, len(chain)): + matR = np.matmul(matR, cont6d_to_matrix_np(cont6d_params[:, chain[i]])) + offset_vec = offsets[:, chain[i]][..., np.newaxis] + # print(matR.shape, offset_vec.shape) + joints[:, chain[i]] = np.matmul(matR, offset_vec).squeeze(-1) + joints[:, chain[i-1]] + return joints + + def forward_kinematics_cont6d(self, cont6d_params, root_pos, skel_joints=None, do_root_R=True): + # cont6d_params (batch_size, joints_num, 6) + # joints (batch_size, joints_num, 3) + # root_pos (batch_size, 3) + if skel_joints is not None: + # skel_joints = torch.from_numpy(skel_joints) + offsets = self.get_offsets_joints_batch(skel_joints) + if len(self._offset.shape) == 2: + offsets = self._offset.expand(cont6d_params.shape[0], -1, -1) + joints = torch.zeros(cont6d_params.shape[:-1] + (3,)).to(cont6d_params.device) + joints[..., 0, :] = root_pos + for chain in self._kinematic_tree: + if do_root_R: + matR = cont6d_to_matrix(cont6d_params[:, 0]) + else: + matR = torch.eye(3).expand((len(cont6d_params), -1, -1)).detach().to(cont6d_params.device) + for i in range(1, len(chain)): + matR = torch.matmul(matR, cont6d_to_matrix(cont6d_params[:, chain[i]])) + offset_vec = offsets[:, chain[i]].unsqueeze(-1) + # print(matR.shape, offset_vec.shape) + joints[:, chain[i]] = torch.matmul(matR, offset_vec).squeeze(-1) + joints[:, chain[i-1]] + return joints + + + + + diff --git a/data/__init__.py b/data/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/data/__pycache__/__init__.cpython-310.pyc b/data/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a154abc7b3ab4a94382c4038f830d0a06f186c18 Binary files /dev/null and b/data/__pycache__/__init__.cpython-310.pyc differ diff --git a/data/__pycache__/t2m_dataset.cpython-310.pyc b/data/__pycache__/t2m_dataset.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c540bde50611978bd0266b5ed772ef8fc4efd386 Binary files /dev/null and b/data/__pycache__/t2m_dataset.cpython-310.pyc differ diff --git a/data/t2m_dataset.py b/data/t2m_dataset.py new file mode 100644 index 0000000000000000000000000000000000000000..38f952a5970a9a5f16074d1c621c1b9e2f4f6574 --- /dev/null +++ b/data/t2m_dataset.py @@ -0,0 +1,348 @@ +from os.path import join as pjoin +import torch +from torch.utils import data +import numpy as np +from tqdm import tqdm +from torch.utils.data._utils.collate import default_collate +import random +import codecs as cs + + +def collate_fn(batch): + batch.sort(key=lambda x: x[3], reverse=True) + return default_collate(batch) + +class MotionDataset(data.Dataset): + def __init__(self, opt, mean, std, split_file): + self.opt = opt + joints_num = opt.joints_num + + self.data = [] + self.lengths = [] + id_list = [] + with open(split_file, 'r') as f: + for line in f.readlines(): + id_list.append(line.strip()) + + for name in tqdm(id_list): + try: + motion = np.load(pjoin(opt.motion_dir, name + '.npy')) + if motion.shape[0] < opt.window_size: + continue + self.lengths.append(motion.shape[0] - opt.window_size) + self.data.append(motion) + except Exception as e: + # Some motion may not exist in KIT dataset + print(e) + pass + + self.cumsum = np.cumsum([0] + self.lengths) + + if opt.is_train: + # root_rot_velocity (B, seq_len, 1) + std[0:1] = std[0:1] / opt.feat_bias + # root_linear_velocity (B, seq_len, 2) + std[1:3] = std[1:3] / opt.feat_bias + # root_y (B, seq_len, 1) + std[3:4] = std[3:4] / opt.feat_bias + # ric_data (B, seq_len, (joint_num - 1)*3) + std[4: 4 + (joints_num - 1) * 3] = std[4: 4 + (joints_num - 1) * 3] / 1.0 + # rot_data (B, seq_len, (joint_num - 1)*6) + std[4 + (joints_num - 1) * 3: 4 + (joints_num - 1) * 9] = std[4 + (joints_num - 1) * 3: 4 + ( + joints_num - 1) * 9] / 1.0 + # local_velocity (B, seq_len, joint_num*3) + std[4 + (joints_num - 1) * 9: 4 + (joints_num - 1) * 9 + joints_num * 3] = std[ + 4 + (joints_num - 1) * 9: 4 + ( + joints_num - 1) * 9 + joints_num * 3] / 1.0 + # foot contact (B, seq_len, 4) + std[4 + (joints_num - 1) * 9 + joints_num * 3:] = std[ + 4 + ( + joints_num - 1) * 9 + joints_num * 3:] / opt.feat_bias + + assert 4 + (joints_num - 1) * 9 + joints_num * 3 + 4 == mean.shape[-1] + np.save(pjoin(opt.meta_dir, 'mean.npy'), mean) + np.save(pjoin(opt.meta_dir, 'std.npy'), std) + + self.mean = mean + self.std = std + print("Total number of motions {}, snippets {}".format(len(self.data), self.cumsum[-1])) + + def inv_transform(self, data): + return data * self.std + self.mean + + def __len__(self): + return self.cumsum[-1] + + def __getitem__(self, item): + if item != 0: + motion_id = np.searchsorted(self.cumsum, item) - 1 + idx = item - self.cumsum[motion_id] - 1 + else: + motion_id = 0 + idx = 0 + motion = self.data[motion_id][idx:idx + self.opt.window_size] + "Z Normalization" + motion = (motion - self.mean) / self.std + + return motion + + +class Text2MotionDatasetEval(data.Dataset): + def __init__(self, opt, mean, std, split_file, w_vectorizer): + self.opt = opt + self.w_vectorizer = w_vectorizer + self.max_length = 20 + self.pointer = 0 + self.max_motion_length = opt.max_motion_length + min_motion_len = 40 if self.opt.dataset_name =='t2m' else 24 + + data_dict = {} + id_list = [] + with cs.open(split_file, 'r') as f: + for line in f.readlines(): + id_list.append(line.strip()) + # id_list = id_list[:250] + + new_name_list = [] + length_list = [] + for name in tqdm(id_list): + try: + motion = np.load(pjoin(opt.motion_dir, name + '.npy')) + if (len(motion)) < min_motion_len or (len(motion) >= 200): + continue + text_data = [] + flag = False + with cs.open(pjoin(opt.text_dir, name + '.txt')) as f: + for line in f.readlines(): + text_dict = {} + line_split = line.strip().split('#') + caption = line_split[0] + tokens = line_split[1].split(' ') + f_tag = float(line_split[2]) + to_tag = float(line_split[3]) + f_tag = 0.0 if np.isnan(f_tag) else f_tag + to_tag = 0.0 if np.isnan(to_tag) else to_tag + + text_dict['caption'] = caption + text_dict['tokens'] = tokens + if f_tag == 0.0 and to_tag == 0.0: + flag = True + text_data.append(text_dict) + else: + try: + n_motion = motion[int(f_tag*20) : int(to_tag*20)] + if (len(n_motion)) < min_motion_len or (len(n_motion) >= 200): + continue + new_name = random.choice('ABCDEFGHIJKLMNOPQRSTUVW') + '_' + name + while new_name in data_dict: + new_name = random.choice('ABCDEFGHIJKLMNOPQRSTUVW') + '_' + name + data_dict[new_name] = {'motion': n_motion, + 'length': len(n_motion), + 'text':[text_dict]} + new_name_list.append(new_name) + length_list.append(len(n_motion)) + except: + print(line_split) + print(line_split[2], line_split[3], f_tag, to_tag, name) + # break + + if flag: + data_dict[name] = {'motion': motion, + 'length': len(motion), + 'text': text_data} + new_name_list.append(name) + length_list.append(len(motion)) + except: + pass + + name_list, length_list = zip(*sorted(zip(new_name_list, length_list), key=lambda x: x[1])) + + self.mean = mean + self.std = std + self.length_arr = np.array(length_list) + self.data_dict = data_dict + self.name_list = name_list + self.reset_max_len(self.max_length) + + def reset_max_len(self, length): + assert length <= self.max_motion_length + self.pointer = np.searchsorted(self.length_arr, length) + print("Pointer Pointing at %d"%self.pointer) + self.max_length = length + + def inv_transform(self, data): + return data * self.std + self.mean + + def __len__(self): + return len(self.data_dict) - self.pointer + + def __getitem__(self, item): + idx = self.pointer + item + data = self.data_dict[self.name_list[idx]] + motion, m_length, text_list = data['motion'], data['length'], data['text'] + # Randomly select a caption + text_data = random.choice(text_list) + caption, tokens = text_data['caption'], text_data['tokens'] + + if len(tokens) < self.opt.max_text_len: + # pad with "unk" + tokens = ['sos/OTHER'] + tokens + ['eos/OTHER'] + sent_len = len(tokens) + tokens = tokens + ['unk/OTHER'] * (self.opt.max_text_len + 2 - sent_len) + else: + # crop + tokens = tokens[:self.opt.max_text_len] + tokens = ['sos/OTHER'] + tokens + ['eos/OTHER'] + sent_len = len(tokens) + pos_one_hots = [] + word_embeddings = [] + for token in tokens: + word_emb, pos_oh = self.w_vectorizer[token] + pos_one_hots.append(pos_oh[None, :]) + word_embeddings.append(word_emb[None, :]) + pos_one_hots = np.concatenate(pos_one_hots, axis=0) + word_embeddings = np.concatenate(word_embeddings, axis=0) + + if self.opt.unit_length < 10: + coin2 = np.random.choice(['single', 'single', 'double']) + else: + coin2 = 'single' + + if coin2 == 'double': + m_length = (m_length // self.opt.unit_length - 1) * self.opt.unit_length + elif coin2 == 'single': + m_length = (m_length // self.opt.unit_length) * self.opt.unit_length + idx = random.randint(0, len(motion) - m_length) + motion = motion[idx:idx+m_length] + + "Z Normalization" + motion = (motion - self.mean) / self.std + + if m_length < self.max_motion_length: + motion = np.concatenate([motion, + np.zeros((self.max_motion_length - m_length, motion.shape[1])) + ], axis=0) + # print(word_embeddings.shape, motion.shape) + # print(tokens) + return word_embeddings, pos_one_hots, caption, sent_len, motion, m_length, '_'.join(tokens) + + +class Text2MotionDataset(data.Dataset): + def __init__(self, opt, mean, std, split_file): + self.opt = opt + self.max_length = 20 + self.pointer = 0 + self.max_motion_length = opt.max_motion_length + min_motion_len = 40 if self.opt.dataset_name =='t2m' else 24 + + data_dict = {} + id_list = [] + with cs.open(split_file, 'r') as f: + for line in f.readlines(): + id_list.append(line.strip()) + # id_list = id_list[:250] + + new_name_list = [] + length_list = [] + for name in tqdm(id_list): + try: + motion = np.load(pjoin(opt.motion_dir, name + '.npy')) + if (len(motion)) < min_motion_len or (len(motion) >= 200): + continue + text_data = [] + flag = False + with cs.open(pjoin(opt.text_dir, name + '.txt')) as f: + for line in f.readlines(): + text_dict = {} + line_split = line.strip().split('#') + # print(line) + caption = line_split[0] + tokens = line_split[1].split(' ') + f_tag = float(line_split[2]) + to_tag = float(line_split[3]) + f_tag = 0.0 if np.isnan(f_tag) else f_tag + to_tag = 0.0 if np.isnan(to_tag) else to_tag + + text_dict['caption'] = caption + text_dict['tokens'] = tokens + if f_tag == 0.0 and to_tag == 0.0: + flag = True + text_data.append(text_dict) + else: + try: + n_motion = motion[int(f_tag*20) : int(to_tag*20)] + if (len(n_motion)) < min_motion_len or (len(n_motion) >= 200): + continue + new_name = random.choice('ABCDEFGHIJKLMNOPQRSTUVW') + '_' + name + while new_name in data_dict: + new_name = random.choice('ABCDEFGHIJKLMNOPQRSTUVW') + '_' + name + data_dict[new_name] = {'motion': n_motion, + 'length': len(n_motion), + 'text':[text_dict]} + new_name_list.append(new_name) + length_list.append(len(n_motion)) + except: + print(line_split) + print(line_split[2], line_split[3], f_tag, to_tag, name) + # break + + if flag: + data_dict[name] = {'motion': motion, + 'length': len(motion), + 'text': text_data} + new_name_list.append(name) + length_list.append(len(motion)) + except Exception as e: + # print(e) + pass + + # name_list, length_list = zip(*sorted(zip(new_name_list, length_list), key=lambda x: x[1])) + name_list, length_list = new_name_list, length_list + + self.mean = mean + self.std = std + self.length_arr = np.array(length_list) + self.data_dict = data_dict + self.name_list = name_list + + def inv_transform(self, data): + return data * self.std + self.mean + + def __len__(self): + return len(self.data_dict) - self.pointer + + def __getitem__(self, item): + idx = self.pointer + item + data = self.data_dict[self.name_list[idx]] + motion, m_length, text_list = data['motion'], data['length'], data['text'] + # Randomly select a caption + text_data = random.choice(text_list) + caption, tokens = text_data['caption'], text_data['tokens'] + + if self.opt.unit_length < 10: + coin2 = np.random.choice(['single', 'single', 'double']) + else: + coin2 = 'single' + + if coin2 == 'double': + m_length = (m_length // self.opt.unit_length - 1) * self.opt.unit_length + elif coin2 == 'single': + m_length = (m_length // self.opt.unit_length) * self.opt.unit_length + idx = random.randint(0, len(motion) - m_length) + motion = motion[idx:idx+m_length] + + "Z Normalization" + motion = (motion - self.mean) / self.std + + if m_length < self.max_motion_length: + motion = np.concatenate([motion, + np.zeros((self.max_motion_length - m_length, motion.shape[1])) + ], axis=0) + # print(word_embeddings.shape, motion.shape) + # print(tokens) + return caption, motion, m_length + + def reset_min_len(self, length): + assert length <= self.max_motion_length + self.pointer = np.searchsorted(self.length_arr, length) + print("Pointer Pointing at %d" % self.pointer) \ No newline at end of file diff --git a/dataset/__init__.py b/dataset/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/edit_t2m.py b/edit_t2m.py new file mode 100644 index 0000000000000000000000000000000000000000..1feb379b462d89cfaad1399291b9156b37cb91e8 --- /dev/null +++ b/edit_t2m.py @@ -0,0 +1,195 @@ +import os +from os.path import join as pjoin + +import torch +import torch.nn.functional as F + +from models.mask_transformer.transformer import MaskTransformer, ResidualTransformer +from models.vq.model import RVQVAE, LengthEstimator + +from options.eval_option import EvalT2MOptions +from utils.get_opt import get_opt + +from utils.fixseed import fixseed +from visualization.joints2bvh import Joint2BVHConvertor + +from utils.motion_process import recover_from_ric +from utils.plot_script import plot_3d_motion + +from utils.paramUtil import t2m_kinematic_chain + +import numpy as np + +from gen_t2m import load_vq_model, load_res_model, load_trans_model + +if __name__ == '__main__': + parser = EvalT2MOptions() + opt = parser.parse() + fixseed(opt.seed) + + opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) + torch.autograd.set_detect_anomaly(True) + + dim_pose = 251 if opt.dataset_name == 'kit' else 263 + + root_dir = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + model_dir = pjoin(root_dir, 'model') + result_dir = pjoin('./editing', opt.ext) + joints_dir = pjoin(result_dir, 'joints') + animation_dir = pjoin(result_dir, 'animations') + os.makedirs(joints_dir, exist_ok=True) + os.makedirs(animation_dir,exist_ok=True) + + model_opt_path = pjoin(root_dir, 'opt.txt') + model_opt = get_opt(model_opt_path, device=opt.device) + + ####################### + ######Loading RVQ###### + ####################### + vq_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'opt.txt') + vq_opt = get_opt(vq_opt_path, device=opt.device) + vq_opt.dim_pose = dim_pose + vq_model, vq_opt = load_vq_model(vq_opt) + + model_opt.num_tokens = vq_opt.nb_code + model_opt.num_quantizers = vq_opt.num_quantizers + model_opt.code_dim = vq_opt.code_dim + + ################################# + ######Loading R-Transformer###### + ################################# + res_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.res_name, 'opt.txt') + res_opt = get_opt(res_opt_path, device=opt.device) + res_model = load_res_model(res_opt, vq_opt, opt) + + assert res_opt.vq_name == model_opt.vq_name + + ################################# + ######Loading M-Transformer###### + ################################# + t2m_transformer = load_trans_model(model_opt, opt, 'latest.tar') + + t2m_transformer.eval() + vq_model.eval() + res_model.eval() + + res_model.to(opt.device) + t2m_transformer.to(opt.device) + vq_model.to(opt.device) + + ##### ---- Data ---- ##### + max_motion_length = 196 + mean = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'meta', 'mean.npy')) + std = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'meta', 'std.npy')) + def inv_transform(data): + return data * std + mean + ### We provided an example source motion (from 'new_joint_vecs') for editing. See './example_data/000612.mp4'### + motion = np.load(opt.source_motion) + m_length = len(motion) + motion = (motion - mean) / std + if max_motion_length > m_length: + motion = np.concatenate([motion, np.zeros((max_motion_length - m_length, motion.shape[1])) ], axis=0) + motion = torch.from_numpy(motion)[None].to(opt.device) + + prompt_list = [] + length_list = [] + if opt.motion_length == 0: + opt.motion_length = m_length + print("Using default motion length.") + + prompt_list.append(opt.text_prompt) + length_list.append(opt.motion_length) + if opt.text_prompt == "": + raise "Using an empty text prompt." + + token_lens = torch.LongTensor(length_list) // 4 + token_lens = token_lens.to(opt.device).long() + + m_length = token_lens * 4 + captions = prompt_list + print_captions = captions[0] + + _edit_slice = opt.mask_edit_section + edit_slice = [] + for eds in _edit_slice: + _start, _end = eds.split(',') + _start = eval(_start) + _end = eval(_end) + edit_slice.append([_start, _end]) + + sample = 0 + kinematic_chain = t2m_kinematic_chain + converter = Joint2BVHConvertor() + + with torch.no_grad(): + tokens, features = vq_model.encode(motion) + ### build editing mask, TOEDIT marked as 1 ### + edit_mask = torch.zeros_like(tokens[..., 0]) + seq_len = tokens.shape[1] + for _start, _end in edit_slice: + if isinstance(_start, float): + _start = int(_start*seq_len) + _end = int(_end*seq_len) + else: + _start //= 4 + _end //= 4 + edit_mask[:, _start: _end] = 1 + print_captions = f'{print_captions} [{_start*4/20.}s - {_end*4/20.}s]' + edit_mask = edit_mask.bool() + for r in range(opt.repeat_times): + print("-->Repeat %d"%r) + with torch.no_grad(): + mids = t2m_transformer.edit( + captions, tokens[..., 0].clone(), m_length//4, + timesteps=opt.time_steps, + cond_scale=opt.cond_scale, + temperature=opt.temperature, + topk_filter_thres=opt.topkr, + gsample=opt.gumbel_sample, + force_mask=opt.force_mask, + edit_mask=edit_mask.clone(), + ) + if opt.use_res_model: + mids = res_model.generate(mids, captions, m_length//4, temperature=1, cond_scale=2) + else: + mids.unsqueeze_(-1) + + pred_motions = vq_model.forward_decoder(mids) + + pred_motions = pred_motions.detach().cpu().numpy() + + source_motions = motion.detach().cpu().numpy() + + data = inv_transform(pred_motions) + source_data = inv_transform(source_motions) + + for k, (caption, joint_data, source_data) in enumerate(zip(captions, data, source_data)): + print("---->Sample %d: %s %d"%(k, caption, m_length[k])) + animation_path = pjoin(animation_dir, str(k)) + joint_path = pjoin(joints_dir, str(k)) + + os.makedirs(animation_path, exist_ok=True) + os.makedirs(joint_path, exist_ok=True) + + joint_data = joint_data[:m_length[k]] + joint = recover_from_ric(torch.from_numpy(joint_data).float(), 22).numpy() + + source_data = source_data[:m_length[k]] + soucre_joint = recover_from_ric(torch.from_numpy(source_data).float(), 22).numpy() + + bvh_path = pjoin(animation_path, "sample%d_repeat%d_len%d_ik.bvh"%(k, r, m_length[k])) + _, ik_joint = converter.convert(joint, filename=bvh_path, iterations=100) + + bvh_path = pjoin(animation_path, "sample%d_repeat%d_len%d.bvh" % (k, r, m_length[k])) + _, joint = converter.convert(joint, filename=bvh_path, iterations=100, foot_ik=False) + + + save_path = pjoin(animation_path, "sample%d_repeat%d_len%d.mp4"%(k, r, m_length[k])) + ik_save_path = pjoin(animation_path, "sample%d_repeat%d_len%d_ik.mp4"%(k, r, m_length[k])) + source_save_path = pjoin(animation_path, "sample%d_source_len%d.mp4"%(k, m_length[k])) + + plot_3d_motion(ik_save_path, kinematic_chain, ik_joint, title=print_captions, fps=20) + plot_3d_motion(save_path, kinematic_chain, joint, title=print_captions, fps=20) + plot_3d_motion(source_save_path, kinematic_chain, soucre_joint, title='None', fps=20) + np.save(pjoin(joint_path, "sample%d_repeat%d_len%d.npy"%(k, r, m_length[k])), joint) + np.save(pjoin(joint_path, "sample%d_repeat%d_len%d_ik.npy"%(k, r, m_length[k])), ik_joint) \ No newline at end of file diff --git a/environment.yaml b/environment.yaml new file mode 100644 index 0000000000000000000000000000000000000000..8dcbe8622a900f10c88ab5762ff8371bfc2d156f --- /dev/null +++ b/environment.yaml @@ -0,0 +1,204 @@ +name: momask +channels: + - pytorch + - anaconda + - conda-forge + - defaults +dependencies: + - _libgcc_mutex=0.1=main + - _openmp_mutex=5.1=1_gnu + - absl-py=1.4.0=pyhd8ed1ab_0 + - aiohttp=3.8.3=py37h5eee18b_0 + - aiosignal=1.2.0=pyhd3eb1b0_0 + - argon2-cffi=21.3.0=pyhd3eb1b0_0 + - argon2-cffi-bindings=21.2.0=py37h7f8727e_0 + - async-timeout=4.0.2=py37h06a4308_0 + - asynctest=0.13.0=py_0 + - attrs=22.1.0=py37h06a4308_0 + - backcall=0.2.0=pyhd3eb1b0_0 + - beautifulsoup4=4.11.1=pyha770c72_0 + - blas=1.0=mkl + - bleach=4.1.0=pyhd3eb1b0_0 + - blinker=1.4=py37h06a4308_0 + - brotlipy=0.7.0=py37h540881e_1004 + - c-ares=1.19.0=h5eee18b_0 + - ca-certificates=2023.05.30=h06a4308_0 + - catalogue=2.0.8=py37h89c1867_0 + - certifi=2022.12.7=py37h06a4308_0 + - cffi=1.15.1=py37h74dc2b5_0 + - charset-normalizer=2.1.1=pyhd8ed1ab_0 + - click=8.0.4=py37h89c1867_0 + - colorama=0.4.5=pyhd8ed1ab_0 + - cryptography=35.0.0=py37hf1a17b8_2 + - cudatoolkit=11.0.221=h6bb024c_0 + - cycler=0.11.0=pyhd3eb1b0_0 + - cymem=2.0.6=py37hd23a5d3_3 + - cython-blis=0.7.7=py37hda87dfa_1 + - dataclasses=0.8=pyhc8e2a94_3 + - dbus=1.13.18=hb2f20db_0 + - debugpy=1.5.1=py37h295c915_0 + - decorator=5.1.1=pyhd3eb1b0_0 + - defusedxml=0.7.1=pyhd3eb1b0_0 + - entrypoints=0.4=py37h06a4308_0 + - expat=2.4.9=h6a678d5_0 + - fftw=3.3.9=h27cfd23_1 + - filelock=3.8.0=pyhd8ed1ab_0 + - fontconfig=2.13.1=h6c09931_0 + - freetype=2.11.0=h70c0345_0 + - frozenlist=1.3.3=py37h5eee18b_0 + - giflib=5.2.1=h7b6447c_0 + - glib=2.69.1=h4ff587b_1 + - gst-plugins-base=1.14.0=h8213a91_2 + - gstreamer=1.14.0=h28cd5cc_2 + - h5py=3.7.0=py37h737f45e_0 + - hdf5=1.10.6=h3ffc7dd_1 + - icu=58.2=he6710b0_3 + - idna=3.4=pyhd8ed1ab_0 + - importlib-metadata=4.11.4=py37h89c1867_0 + - intel-openmp=2021.4.0=h06a4308_3561 + - ipykernel=6.15.2=py37h06a4308_0 + - ipython=7.31.1=py37h06a4308_1 + - ipython_genutils=0.2.0=pyhd3eb1b0_1 + - jedi=0.18.1=py37h06a4308_1 + - jinja2=3.1.2=pyhd8ed1ab_1 + - joblib=1.1.0=pyhd3eb1b0_0 + - jpeg=9b=h024ee3a_2 + - jsonschema=3.0.2=py37_0 + - jupyter_client=7.4.9=py37h06a4308_0 + - jupyter_core=4.11.2=py37h06a4308_0 + - jupyterlab_pygments=0.1.2=py_0 + - kiwisolver=1.4.2=py37h295c915_0 + - langcodes=3.3.0=pyhd8ed1ab_0 + - lcms2=2.12=h3be6417_0 + - ld_impl_linux-64=2.38=h1181459_1 + - libffi=3.3=he6710b0_2 + - libgcc-ng=11.2.0=h1234567_1 + - libgfortran-ng=11.2.0=h00389a5_1 + - libgfortran5=11.2.0=h1234567_1 + - libgomp=11.2.0=h1234567_1 + - libpng=1.6.37=hbc83047_0 + - libprotobuf=3.15.8=h780b84a_1 + - libsodium=1.0.18=h7b6447c_0 + - libstdcxx-ng=11.2.0=h1234567_1 + - libtiff=4.1.0=h2733197_1 + - libuuid=1.0.3=h7f8727e_2 + - libuv=1.40.0=h7b6447c_0 + - libwebp=1.2.0=h89dd481_0 + - libxcb=1.15=h7f8727e_0 + - libxml2=2.9.14=h74e7548_0 + - lz4-c=1.9.3=h295c915_1 + - markdown=3.4.3=pyhd8ed1ab_0 + - markupsafe=2.1.1=py37h540881e_1 + - matplotlib=3.1.3=py37_0 + - matplotlib-base=3.1.3=py37hef1b27d_0 + - matplotlib-inline=0.1.6=py37h06a4308_0 + - mistune=0.8.4=py37h14c3975_1001 + - mkl=2021.4.0=h06a4308_640 + - mkl-service=2.4.0=py37h7f8727e_0 + - mkl_fft=1.3.1=py37hd3c417c_0 + - mkl_random=1.2.2=py37h51133e4_0 + - multidict=6.0.2=py37h5eee18b_0 + - murmurhash=1.0.7=py37hd23a5d3_0 + - nb_conda_kernels=2.3.1=py37h06a4308_0 + - nbclient=0.5.13=py37h06a4308_0 + - nbconvert=6.4.4=py37h06a4308_0 + - nbformat=5.5.0=py37h06a4308_0 + - ncurses=6.3=h5eee18b_3 + - nest-asyncio=1.5.6=py37h06a4308_0 + - ninja=1.10.2=h06a4308_5 + - ninja-base=1.10.2=hd09550d_5 + - notebook=6.4.12=py37h06a4308_0 + - numpy=1.21.5=py37h6c91a56_3 + - numpy-base=1.21.5=py37ha15fc14_3 + - openssl=1.1.1v=h7f8727e_0 + - packaging=21.3=pyhd8ed1ab_0 + - pandocfilters=1.5.0=pyhd3eb1b0_0 + - parso=0.8.3=pyhd3eb1b0_0 + - pathy=0.6.2=pyhd8ed1ab_0 + - pcre=8.45=h295c915_0 + - pexpect=4.8.0=pyhd3eb1b0_3 + - pickleshare=0.7.5=pyhd3eb1b0_1003 + - pillow=9.2.0=py37hace64e9_1 + - pip=22.2.2=py37h06a4308_0 + - preshed=3.0.6=py37hd23a5d3_2 + - prometheus_client=0.14.1=py37h06a4308_0 + - prompt-toolkit=3.0.36=py37h06a4308_0 + - psutil=5.9.0=py37h5eee18b_0 + - ptyprocess=0.7.0=pyhd3eb1b0_2 + - pycparser=2.21=pyhd8ed1ab_0 + - pydantic=1.8.2=py37h5e8e339_2 + - pygments=2.11.2=pyhd3eb1b0_0 + - pyjwt=2.4.0=py37h06a4308_0 + - pyopenssl=22.0.0=pyhd8ed1ab_1 + - pyparsing=3.0.9=py37h06a4308_0 + - pyqt=5.9.2=py37h05f1152_2 + - pyrsistent=0.18.0=py37heee7806_0 + - pysocks=1.7.1=py37h89c1867_5 + - python=3.7.13=h12debd9_0 + - python-dateutil=2.8.2=pyhd3eb1b0_0 + - python-fastjsonschema=2.16.2=py37h06a4308_0 + - python_abi=3.7=2_cp37m + - pytorch=1.7.1=py3.7_cuda11.0.221_cudnn8.0.5_0 + - pyzmq=23.2.0=py37h6a678d5_0 + - qt=5.9.7=h5867ecd_1 + - readline=8.1.2=h7f8727e_1 + - requests=2.28.1=pyhd8ed1ab_1 + - scikit-learn=1.0.2=py37h51133e4_1 + - scipy=1.7.3=py37h6c91a56_2 + - send2trash=1.8.0=pyhd3eb1b0_1 + - setuptools=63.4.1=py37h06a4308_0 + - shellingham=1.5.0=pyhd8ed1ab_0 + - sip=4.19.8=py37hf484d3e_0 + - six=1.16.0=pyhd3eb1b0_1 + - smart_open=5.2.1=pyhd8ed1ab_0 + - soupsieve=2.3.2.post1=pyhd8ed1ab_0 + - spacy=3.3.1=py37h79cecc1_0 + - spacy-legacy=3.0.10=pyhd8ed1ab_0 + - spacy-loggers=1.0.3=pyhd8ed1ab_0 + - sqlite=3.39.3=h5082296_0 + - srsly=2.4.3=py37hd23a5d3_1 + - tensorboard-plugin-wit=1.8.1=py37h06a4308_0 + - terminado=0.17.1=py37h06a4308_0 + - testpath=0.6.0=py37h06a4308_0 + - thinc=8.0.15=py37h48bf904_0 + - threadpoolctl=2.2.0=pyh0d69192_0 + - tk=8.6.12=h1ccaba5_0 + - torchaudio=0.7.2=py37 + - torchvision=0.8.2=py37_cu110 + - tornado=6.2=py37h5eee18b_0 + - tqdm=4.64.1=py37h06a4308_0 + - traitlets=5.7.1=py37h06a4308_0 + - trimesh=3.15.3=pyh1a96a4e_0 + - typer=0.4.2=pyhd8ed1ab_0 + - typing-extensions=3.10.0.2=hd8ed1ab_0 + - typing_extensions=3.10.0.2=pyha770c72_0 + - urllib3=1.26.15=pyhd8ed1ab_0 + - wasabi=0.10.1=pyhd8ed1ab_1 + - webencodings=0.5.1=py37_1 + - werkzeug=2.2.3=pyhd8ed1ab_0 + - wheel=0.37.1=pyhd3eb1b0_0 + - xz=5.2.6=h5eee18b_0 + - yarl=1.8.1=py37h5eee18b_0 + - zeromq=4.3.4=h2531618_0 + - zipp=3.8.1=pyhd8ed1ab_0 + - zlib=1.2.12=h5eee18b_3 + - zstd=1.4.9=haebb681_0 + - pip: + - cachetools==5.3.1 + - einops==0.6.1 + - ftfy==6.1.1 + - gdown==4.7.1 + - google-auth==2.22.0 + - google-auth-oauthlib==0.4.6 + - grpcio==1.57.0 + - oauthlib==3.2.2 + - protobuf==3.20.3 + - pyasn1==0.5.0 + - pyasn1-modules==0.3.0 + - regex==2023.8.8 + - requests-oauthlib==1.3.1 + - rsa==4.9 + - tensorboard==2.11.2 + - tensorboard-data-server==0.6.1 + - wcwidth==0.2.6 +prefix: /home/chuan/anaconda3/envs/momask \ No newline at end of file diff --git a/eval_t2m_trans_res.py b/eval_t2m_trans_res.py new file mode 100644 index 0000000000000000000000000000000000000000..005642dcb8bd76d3efc6fb6f850002e3c5c68bcc --- /dev/null +++ b/eval_t2m_trans_res.py @@ -0,0 +1,199 @@ +import os +from os.path import join as pjoin + +import torch + +from models.mask_transformer.transformer import MaskTransformer, ResidualTransformer +from models.vq.model import RVQVAE + +from options.eval_option import EvalT2MOptions +from utils.get_opt import get_opt +from motion_loaders.dataset_motion_loader import get_dataset_motion_loader +from models.t2m_eval_wrapper import EvaluatorModelWrapper + +import utils.eval_t2m as eval_t2m +from utils.fixseed import fixseed + +import numpy as np + +def load_vq_model(vq_opt): + # opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'opt.txt') + vq_model = RVQVAE(vq_opt, + dim_pose, + vq_opt.nb_code, + vq_opt.code_dim, + vq_opt.output_emb_width, + vq_opt.down_t, + vq_opt.stride_t, + vq_opt.width, + vq_opt.depth, + vq_opt.dilation_growth_rate, + vq_opt.vq_act, + vq_opt.vq_norm) + ckpt = torch.load(pjoin(vq_opt.checkpoints_dir, vq_opt.dataset_name, vq_opt.name, 'model', 'net_best_fid.tar'), + map_location=opt.device) + model_key = 'vq_model' if 'vq_model' in ckpt else 'net' + vq_model.load_state_dict(ckpt[model_key]) + print(f'Loading VQ Model {vq_opt.name} Completed!') + return vq_model, vq_opt + +def load_trans_model(model_opt, which_model): + t2m_transformer = MaskTransformer(code_dim=model_opt.code_dim, + cond_mode='text', + latent_dim=model_opt.latent_dim, + ff_size=model_opt.ff_size, + num_layers=model_opt.n_layers, + num_heads=model_opt.n_heads, + dropout=model_opt.dropout, + clip_dim=512, + cond_drop_prob=model_opt.cond_drop_prob, + clip_version=clip_version, + opt=model_opt) + ckpt = torch.load(pjoin(model_opt.checkpoints_dir, model_opt.dataset_name, model_opt.name, 'model', which_model), + map_location=opt.device) + model_key = 't2m_transformer' if 't2m_transformer' in ckpt else 'trans' + # print(ckpt.keys()) + missing_keys, unexpected_keys = t2m_transformer.load_state_dict(ckpt[model_key], strict=False) + assert len(unexpected_keys) == 0 + assert all([k.startswith('clip_model.') for k in missing_keys]) + print(f'Loading Mask Transformer {opt.name} from epoch {ckpt["ep"]}!') + return t2m_transformer + +def load_res_model(res_opt): + res_opt.num_quantizers = vq_opt.num_quantizers + res_opt.num_tokens = vq_opt.nb_code + res_transformer = ResidualTransformer(code_dim=vq_opt.code_dim, + cond_mode='text', + latent_dim=res_opt.latent_dim, + ff_size=res_opt.ff_size, + num_layers=res_opt.n_layers, + num_heads=res_opt.n_heads, + dropout=res_opt.dropout, + clip_dim=512, + shared_codebook=vq_opt.shared_codebook, + cond_drop_prob=res_opt.cond_drop_prob, + # codebook=vq_model.quantizer.codebooks[0] if opt.fix_token_emb else None, + share_weight=res_opt.share_weight, + clip_version=clip_version, + opt=res_opt) + + ckpt = torch.load(pjoin(res_opt.checkpoints_dir, res_opt.dataset_name, res_opt.name, 'model', 'net_best_fid.tar'), + map_location=opt.device) + missing_keys, unexpected_keys = res_transformer.load_state_dict(ckpt['res_transformer'], strict=False) + assert len(unexpected_keys) == 0 + assert all([k.startswith('clip_model.') for k in missing_keys]) + print(f'Loading Residual Transformer {res_opt.name} from epoch {ckpt["ep"]}!') + return res_transformer + +if __name__ == '__main__': + parser = EvalT2MOptions() + opt = parser.parse() + fixseed(opt.seed) + + opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) + torch.autograd.set_detect_anomaly(True) + + dim_pose = 251 if opt.dataset_name == 'kit' else 263 + + # out_dir = pjoin(opt.check) + root_dir = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + model_dir = pjoin(root_dir, 'model') + out_dir = pjoin(root_dir, 'eval') + os.makedirs(out_dir, exist_ok=True) + + out_path = pjoin(out_dir, "%s.log"%opt.ext) + + f = open(pjoin(out_path), 'w') + + model_opt_path = pjoin(root_dir, 'opt.txt') + model_opt = get_opt(model_opt_path, device=opt.device) + clip_version = 'ViT-B/32' + + vq_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'opt.txt') + vq_opt = get_opt(vq_opt_path, device=opt.device) + vq_model, vq_opt = load_vq_model(vq_opt) + + model_opt.num_tokens = vq_opt.nb_code + model_opt.num_quantizers = vq_opt.num_quantizers + model_opt.code_dim = vq_opt.code_dim + + res_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.res_name, 'opt.txt') + res_opt = get_opt(res_opt_path, device=opt.device) + res_model = load_res_model(res_opt) + + assert res_opt.vq_name == model_opt.vq_name + + dataset_opt_path = 'checkpoints/kit/Comp_v6_KLD005/opt.txt' if opt.dataset_name == 'kit' \ + else 'checkpoints/t2m/Comp_v6_KLD005/opt.txt' + + wrapper_opt = get_opt(dataset_opt_path, torch.device('cuda')) + eval_wrapper = EvaluatorModelWrapper(wrapper_opt) + + ##### ---- Dataloader ---- ##### + opt.nb_joints = 21 if opt.dataset_name == 'kit' else 22 + + eval_val_loader, _ = get_dataset_motion_loader(dataset_opt_path, 32, 'test', device=opt.device) + + # model_dir = pjoin(opt.) + for file in os.listdir(model_dir): + if opt.which_epoch != "all" and opt.which_epoch not in file: + continue + print('loading checkpoint {}'.format(file)) + t2m_transformer = load_trans_model(model_opt, file) + t2m_transformer.eval() + vq_model.eval() + res_model.eval() + + t2m_transformer.to(opt.device) + vq_model.to(opt.device) + res_model.to(opt.device) + + fid = [] + div = [] + top1 = [] + top2 = [] + top3 = [] + matching = [] + mm = [] + + repeat_time = 20 + for i in range(repeat_time): + with torch.no_grad(): + best_fid, best_div, Rprecision, best_matching, best_mm = \ + eval_t2m.evaluation_mask_transformer_test_plus_res(eval_val_loader, vq_model, res_model, t2m_transformer, + i, eval_wrapper=eval_wrapper, + time_steps=opt.time_steps, cond_scale=opt.cond_scale, + temperature=opt.temperature, topkr=opt.topkr, + force_mask=opt.force_mask, cal_mm=True) + fid.append(best_fid) + div.append(best_div) + top1.append(Rprecision[0]) + top2.append(Rprecision[1]) + top3.append(Rprecision[2]) + matching.append(best_matching) + mm.append(best_mm) + + fid = np.array(fid) + div = np.array(div) + top1 = np.array(top1) + top2 = np.array(top2) + top3 = np.array(top3) + matching = np.array(matching) + mm = np.array(mm) + + print(f'{file} final result:') + print(f'{file} final result:', file=f, flush=True) + + msg_final = f"\tFID: {np.mean(fid):.3f}, conf. {np.std(fid) * 1.96 / np.sqrt(repeat_time):.3f}\n" \ + f"\tDiversity: {np.mean(div):.3f}, conf. {np.std(div) * 1.96 / np.sqrt(repeat_time):.3f}\n" \ + f"\tTOP1: {np.mean(top1):.3f}, conf. {np.std(top1) * 1.96 / np.sqrt(repeat_time):.3f}, TOP2. {np.mean(top2):.3f}, conf. {np.std(top2) * 1.96 / np.sqrt(repeat_time):.3f}, TOP3. {np.mean(top3):.3f}, conf. {np.std(top3) * 1.96 / np.sqrt(repeat_time):.3f}\n" \ + f"\tMatching: {np.mean(matching):.3f}, conf. {np.std(matching) * 1.96 / np.sqrt(repeat_time):.3f}\n" \ + f"\tMultimodality:{np.mean(mm):.3f}, conf.{np.std(mm) * 1.96 / np.sqrt(repeat_time):.3f}\n\n" + # logger.info(msg_final) + print(msg_final) + print(msg_final, file=f, flush=True) + + f.close() + + +# python eval_t2m_trans.py --name t2m_nlayer8_nhead6_ld384_ff1024_cdp0.1_vq --dataset_name t2m --gpu_id 3 --cond_scale 4 --time_steps 18 --temperature 1 --topkr 0.9 --gumbel_sample --ext cs4_ts18_tau1_topkr0.9_gs \ No newline at end of file diff --git a/eval_t2m_vq.py b/eval_t2m_vq.py new file mode 100644 index 0000000000000000000000000000000000000000..cb5d7438ffa498a46902194760b718b5744d89d8 --- /dev/null +++ b/eval_t2m_vq.py @@ -0,0 +1,123 @@ +import sys +import os +from os.path import join as pjoin + +import torch +from models.vq.model import RVQVAE +from options.vq_option import arg_parse +from motion_loaders.dataset_motion_loader import get_dataset_motion_loader +import utils.eval_t2m as eval_t2m +from utils.get_opt import get_opt +from models.t2m_eval_wrapper import EvaluatorModelWrapper +import warnings +warnings.filterwarnings('ignore') +import numpy as np +from utils.word_vectorizer import WordVectorizer + +def load_vq_model(vq_opt, which_epoch): + # opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'opt.txt') + + vq_model = RVQVAE(vq_opt, + dim_pose, + vq_opt.nb_code, + vq_opt.code_dim, + vq_opt.code_dim, + vq_opt.down_t, + vq_opt.stride_t, + vq_opt.width, + vq_opt.depth, + vq_opt.dilation_growth_rate, + vq_opt.vq_act, + vq_opt.vq_norm) + ckpt = torch.load(pjoin(vq_opt.checkpoints_dir, vq_opt.dataset_name, vq_opt.name, 'model', which_epoch), + map_location='cpu') + model_key = 'vq_model' if 'vq_model' in ckpt else 'net' + vq_model.load_state_dict(ckpt[model_key]) + vq_epoch = ckpt['ep'] if 'ep' in ckpt else -1 + print(f'Loading VQ Model {vq_opt.name} Completed!, Epoch {vq_epoch}') + return vq_model, vq_epoch + +if __name__ == "__main__": + ##### ---- Exp dirs ---- ##### + args = arg_parse(False) + args.device = torch.device("cpu" if args.gpu_id == -1 else "cuda:" + str(args.gpu_id)) + + args.out_dir = pjoin(args.checkpoints_dir, args.dataset_name, args.name, 'eval') + os.makedirs(args.out_dir, exist_ok=True) + + f = open(pjoin(args.out_dir, '%s.log'%args.ext), 'w') + + dataset_opt_path = 'checkpoints/kit/Comp_v6_KLD005/opt.txt' if args.dataset_name == 'kit' \ + else 'checkpoints/t2m/Comp_v6_KLD005/opt.txt' + + wrapper_opt = get_opt(dataset_opt_path, torch.device('cuda')) + eval_wrapper = EvaluatorModelWrapper(wrapper_opt) + + ##### ---- Dataloader ---- ##### + args.nb_joints = 21 if args.dataset_name == 'kit' else 22 + dim_pose = 251 if args.dataset_name == 'kit' else 263 + + eval_val_loader, _ = get_dataset_motion_loader(dataset_opt_path, 32, 'test', device=args.device) + + print(len(eval_val_loader)) + + ##### ---- Network ---- ##### + vq_opt_path = pjoin(args.checkpoints_dir, args.dataset_name, args.name, 'opt.txt') + vq_opt = get_opt(vq_opt_path, device=args.device) + # net = load_vq_model() + + model_dir = pjoin(args.checkpoints_dir, args.dataset_name, args.name, 'model') + for file in os.listdir(model_dir): + # if not file.endswith('tar'): + # continue + # if not file.startswith('net_best_fid'): + # continue + if args.which_epoch != "all" and args.which_epoch not in file: + continue + print(file) + net, ep = load_vq_model(vq_opt, file) + + net.eval() + net.cuda() + + fid = [] + div = [] + top1 = [] + top2 = [] + top3 = [] + matching = [] + mae = [] + repeat_time = 20 + for i in range(repeat_time): + best_fid, best_div, Rprecision, best_matching, l1_dist = \ + eval_t2m.evaluation_vqvae_plus_mpjpe(eval_val_loader, net, i, eval_wrapper=eval_wrapper, num_joint=args.nb_joints) + fid.append(best_fid) + div.append(best_div) + top1.append(Rprecision[0]) + top2.append(Rprecision[1]) + top3.append(Rprecision[2]) + matching.append(best_matching) + mae.append(l1_dist) + + fid = np.array(fid) + div = np.array(div) + top1 = np.array(top1) + top2 = np.array(top2) + top3 = np.array(top3) + matching = np.array(matching) + mae = np.array(mae) + + print(f'{file} final result, epoch {ep}') + print(f'{file} final result, epoch {ep}', file=f, flush=True) + + msg_final = f"\tFID: {np.mean(fid):.3f}, conf. {np.std(fid)*1.96/np.sqrt(repeat_time):.3f}\n" \ + f"\tDiversity: {np.mean(div):.3f}, conf. {np.std(div)*1.96/np.sqrt(repeat_time):.3f}\n" \ + f"\tTOP1: {np.mean(top1):.3f}, conf. {np.std(top1)*1.96/np.sqrt(repeat_time):.3f}, TOP2. {np.mean(top2):.3f}, conf. {np.std(top2)*1.96/np.sqrt(repeat_time):.3f}, TOP3. {np.mean(top3):.3f}, conf. {np.std(top3)*1.96/np.sqrt(repeat_time):.3f}\n" \ + f"\tMatching: {np.mean(matching):.3f}, conf. {np.std(matching)*1.96/np.sqrt(repeat_time):.3f}\n" \ + f"\tMAE:{np.mean(mae):.3f}, conf.{np.std(mae)*1.96/np.sqrt(repeat_time):.3f}\n\n" + # logger.info(msg_final) + print(msg_final) + print(msg_final, file=f, flush=True) + + f.close() + diff --git a/example_data/000612.mp4 b/example_data/000612.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..f1c435ba67bbe96cf60cb145069a6365e2f234f0 Binary files /dev/null and b/example_data/000612.mp4 differ diff --git a/example_data/000612.npy b/example_data/000612.npy new file mode 100644 index 0000000000000000000000000000000000000000..403f5eca3ea59eeadebfc6236f274d283644b126 --- /dev/null +++ b/example_data/000612.npy @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85e5a8081278a0e31488eaa29386940b9e4b739fb401042f7ad883afb475ab10 +size 418824 diff --git a/gen_t2m.py b/gen_t2m.py new file mode 100644 index 0000000000000000000000000000000000000000..b1a0335a8a0083887a766b8e5848b319fb8da65b --- /dev/null +++ b/gen_t2m.py @@ -0,0 +1,261 @@ +import os +from os.path import join as pjoin + +import torch +import torch.nn.functional as F + +from models.mask_transformer.transformer import MaskTransformer, ResidualTransformer +from models.vq.model import RVQVAE, LengthEstimator + +from options.eval_option import EvalT2MOptions +from utils.get_opt import get_opt + +from utils.fixseed import fixseed +from visualization.joints2bvh import Joint2BVHConvertor +from torch.distributions.categorical import Categorical + + +from utils.motion_process import recover_from_ric +from utils.plot_script import plot_3d_motion + +from utils.paramUtil import t2m_kinematic_chain + +import numpy as np +clip_version = 'ViT-B/32' + +def load_vq_model(vq_opt): + # opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'opt.txt') + vq_model = RVQVAE(vq_opt, + vq_opt.dim_pose, + vq_opt.nb_code, + vq_opt.code_dim, + vq_opt.output_emb_width, + vq_opt.down_t, + vq_opt.stride_t, + vq_opt.width, + vq_opt.depth, + vq_opt.dilation_growth_rate, + vq_opt.vq_act, + vq_opt.vq_norm) + ckpt = torch.load(pjoin(vq_opt.checkpoints_dir, vq_opt.dataset_name, vq_opt.name, 'model', 'net_best_fid.tar'), + map_location='cpu') + model_key = 'vq_model' if 'vq_model' in ckpt else 'net' + vq_model.load_state_dict(ckpt[model_key]) + print(f'Loading VQ Model {vq_opt.name} Completed!') + return vq_model, vq_opt + +def load_trans_model(model_opt, opt, which_model): + t2m_transformer = MaskTransformer(code_dim=model_opt.code_dim, + cond_mode='text', + latent_dim=model_opt.latent_dim, + ff_size=model_opt.ff_size, + num_layers=model_opt.n_layers, + num_heads=model_opt.n_heads, + dropout=model_opt.dropout, + clip_dim=512, + cond_drop_prob=model_opt.cond_drop_prob, + clip_version=clip_version, + opt=model_opt) + ckpt = torch.load(pjoin(model_opt.checkpoints_dir, model_opt.dataset_name, model_opt.name, 'model', which_model), + map_location='cpu') + model_key = 't2m_transformer' if 't2m_transformer' in ckpt else 'trans' + # print(ckpt.keys()) + missing_keys, unexpected_keys = t2m_transformer.load_state_dict(ckpt[model_key], strict=False) + assert len(unexpected_keys) == 0 + assert all([k.startswith('clip_model.') for k in missing_keys]) + print(f'Loading Transformer {opt.name} from epoch {ckpt["ep"]}!') + return t2m_transformer + +def load_res_model(res_opt, vq_opt, opt): + res_opt.num_quantizers = vq_opt.num_quantizers + res_opt.num_tokens = vq_opt.nb_code + res_transformer = ResidualTransformer(code_dim=vq_opt.code_dim, + cond_mode='text', + latent_dim=res_opt.latent_dim, + ff_size=res_opt.ff_size, + num_layers=res_opt.n_layers, + num_heads=res_opt.n_heads, + dropout=res_opt.dropout, + clip_dim=512, + shared_codebook=vq_opt.shared_codebook, + cond_drop_prob=res_opt.cond_drop_prob, + # codebook=vq_model.quantizer.codebooks[0] if opt.fix_token_emb else None, + share_weight=res_opt.share_weight, + clip_version=clip_version, + opt=res_opt) + + ckpt = torch.load(pjoin(res_opt.checkpoints_dir, res_opt.dataset_name, res_opt.name, 'model', 'net_best_fid.tar'), + map_location=opt.device) + missing_keys, unexpected_keys = res_transformer.load_state_dict(ckpt['res_transformer'], strict=False) + assert len(unexpected_keys) == 0 + assert all([k.startswith('clip_model.') for k in missing_keys]) + print(f'Loading Residual Transformer {res_opt.name} from epoch {ckpt["ep"]}!') + return res_transformer + +def load_len_estimator(opt): + model = LengthEstimator(512, 50) + ckpt = torch.load(pjoin(opt.checkpoints_dir, opt.dataset_name, 'length_estimator', 'model', 'finest.tar'), + map_location=opt.device) + model.load_state_dict(ckpt['estimator']) + print(f'Loading Length Estimator from epoch {ckpt["epoch"]}!') + return model + + +if __name__ == '__main__': + parser = EvalT2MOptions() + opt = parser.parse() + fixseed(opt.seed) + + opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) + torch.autograd.set_detect_anomaly(True) + + dim_pose = 251 if opt.dataset_name == 'kit' else 263 + + # out_dir = pjoin(opt.check) + root_dir = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + model_dir = pjoin(root_dir, 'model') + result_dir = pjoin('./generation', opt.ext) + joints_dir = pjoin(result_dir, 'joints') + animation_dir = pjoin(result_dir, 'animations') + os.makedirs(joints_dir, exist_ok=True) + os.makedirs(animation_dir,exist_ok=True) + + model_opt_path = pjoin(root_dir, 'opt.txt') + model_opt = get_opt(model_opt_path, device=opt.device) + + + ####################### + ######Loading RVQ###### + ####################### + vq_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'opt.txt') + vq_opt = get_opt(vq_opt_path, device=opt.device) + vq_opt.dim_pose = dim_pose + vq_model, vq_opt = load_vq_model(vq_opt) + + model_opt.num_tokens = vq_opt.nb_code + model_opt.num_quantizers = vq_opt.num_quantizers + model_opt.code_dim = vq_opt.code_dim + + ################################# + ######Loading R-Transformer###### + ################################# + res_opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.res_name, 'opt.txt') + res_opt = get_opt(res_opt_path, device=opt.device) + res_model = load_res_model(res_opt, vq_opt, opt) + + assert res_opt.vq_name == model_opt.vq_name + + ################################# + ######Loading M-Transformer###### + ################################# + t2m_transformer = load_trans_model(model_opt, opt, 'latest.tar') + + ################################## + #####Loading Length Predictor##### + ################################## + length_estimator = load_len_estimator(model_opt) + + t2m_transformer.eval() + vq_model.eval() + res_model.eval() + length_estimator.eval() + + res_model.to(opt.device) + t2m_transformer.to(opt.device) + vq_model.to(opt.device) + length_estimator.to(opt.device) + + ##### ---- Dataloader ---- ##### + opt.nb_joints = 21 if opt.dataset_name == 'kit' else 22 + + mean = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'meta', 'mean.npy')) + std = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, model_opt.vq_name, 'meta', 'std.npy')) + def inv_transform(data): + return data * std + mean + + prompt_list = [] + length_list = [] + + est_length = False + if opt.text_prompt != "": + prompt_list.append(opt.text_prompt) + if opt.motion_length == 0: + est_length = True + else: + length_list.append(opt.motion_length) + elif opt.text_path != "": + with open(opt.text_path, 'r') as f: + lines = f.readlines() + for line in lines: + infos = line.split('#') + prompt_list.append(infos[0]) + if len(infos) == 1 or (not infos[1].isdigit()): + est_length = True + length_list = [] + else: + length_list.append(int(infos[-1])) + else: + raise "A text prompt, or a file a text prompts are required!!!" + # print('loading checkpoint {}'.format(file)) + + if est_length: + print("Since no motion length are specified, we will use estimated motion lengthes!!") + text_embedding = t2m_transformer.encode_text(prompt_list) + pred_dis = length_estimator(text_embedding) + probs = F.softmax(pred_dis, dim=-1) # (b, ntoken) + token_lens = Categorical(probs).sample() # (b, seqlen) + # lengths = torch.multinomial() + else: + token_lens = torch.LongTensor(length_list) // 4 + token_lens = token_lens.to(opt.device).long() + + m_length = token_lens * 4 + captions = prompt_list + + sample = 0 + kinematic_chain = t2m_kinematic_chain + converter = Joint2BVHConvertor() + + for r in range(opt.repeat_times): + print("-->Repeat %d"%r) + with torch.no_grad(): + mids = t2m_transformer.generate(captions, token_lens, + timesteps=opt.time_steps, + cond_scale=opt.cond_scale, + temperature=opt.temperature, + topk_filter_thres=opt.topkr, + gsample=opt.gumbel_sample) + # print(mids) + # print(mids.shape) + mids = res_model.generate(mids, captions, token_lens, temperature=1, cond_scale=5) + pred_motions = vq_model.forward_decoder(mids) + + pred_motions = pred_motions.detach().cpu().numpy() + + data = inv_transform(pred_motions) + + for k, (caption, joint_data) in enumerate(zip(captions, data)): + print("---->Sample %d: %s %d"%(k, caption, m_length[k])) + animation_path = pjoin(animation_dir, str(k)) + joint_path = pjoin(joints_dir, str(k)) + + os.makedirs(animation_path, exist_ok=True) + os.makedirs(joint_path, exist_ok=True) + + joint_data = joint_data[:m_length[k]] + joint = recover_from_ric(torch.from_numpy(joint_data).float(), 22).numpy() + + bvh_path = pjoin(animation_path, "sample%d_repeat%d_len%d_ik.bvh"%(k, r, m_length[k])) + _, ik_joint = converter.convert(joint, filename=bvh_path, iterations=100) + + bvh_path = pjoin(animation_path, "sample%d_repeat%d_len%d.bvh" % (k, r, m_length[k])) + _, joint = converter.convert(joint, filename=bvh_path, iterations=100, foot_ik=False) + + + save_path = pjoin(animation_path, "sample%d_repeat%d_len%d.mp4"%(k, r, m_length[k])) + ik_save_path = pjoin(animation_path, "sample%d_repeat%d_len%d_ik.mp4"%(k, r, m_length[k])) + + plot_3d_motion(ik_save_path, kinematic_chain, ik_joint, title=caption, fps=20) + plot_3d_motion(save_path, kinematic_chain, joint, title=caption, fps=20) + np.save(pjoin(joint_path, "sample%d_repeat%d_len%d.npy"%(k, r, m_length[k])), joint) + np.save(pjoin(joint_path, "sample%d_repeat%d_len%d_ik.npy"%(k, r, m_length[k])), ik_joint) \ No newline at end of file diff --git a/glove/our_vab_data.npy b/glove/our_vab_data.npy new file mode 100644 index 0000000000000000000000000000000000000000..957a99a79f0fc98023d3e2c1bdd98ef1f77d0be7 --- /dev/null +++ b/glove/our_vab_data.npy @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73ed9b73ee5bc5ab683661c132b9f98fe305672dffdf70ceeac1bc447543d668 +size 10077728 diff --git a/glove/our_vab_idx.pkl b/glove/our_vab_idx.pkl new file mode 100644 index 0000000000000000000000000000000000000000..3a25d450e6c30621e7c13aa2f12b445f6b7ae086 --- /dev/null +++ b/glove/our_vab_idx.pkl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d85dce83d2c27a92bb94bb51dc1f55a04fcaa328c359d23eccf648e296c16493 +size 79811 diff --git a/glove/our_vab_words.pkl b/glove/our_vab_words.pkl new file mode 100644 index 0000000000000000000000000000000000000000..438f8f83511a2aee1d40ea23c692dc881b91d737 --- /dev/null +++ b/glove/our_vab_words.pkl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fac88da1be6f00d36b72b88c9745c8ac35a94a7bd6ccf1fa3bab380faf8c2e0d +size 67470 diff --git a/models/.DS_Store b/models/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..30ae849f64d056a297a5323177cdb909ac8c0899 Binary files /dev/null and b/models/.DS_Store differ diff --git a/models/__init__.py b/models/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/models/__pycache__/__init__.cpython-310.pyc b/models/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..91b369f88a1eab42410dce81bcc525ae727d239f Binary files /dev/null and b/models/__pycache__/__init__.cpython-310.pyc differ diff --git a/models/__pycache__/t2m_eval_modules.cpython-310.pyc b/models/__pycache__/t2m_eval_modules.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bfa9a786add3b74d72991054b2b70ae0f74cbceb Binary files /dev/null and b/models/__pycache__/t2m_eval_modules.cpython-310.pyc differ diff --git a/models/__pycache__/t2m_eval_wrapper.cpython-310.pyc b/models/__pycache__/t2m_eval_wrapper.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..022fdc6db263a7ed8f43658771b2770fefa4b621 Binary files /dev/null and b/models/__pycache__/t2m_eval_wrapper.cpython-310.pyc differ diff --git a/models/mask_transformer/__init__.py b/models/mask_transformer/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/models/mask_transformer/__pycache__/__init__.cpython-310.pyc b/models/mask_transformer/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..eb7dd601874d654a2ca18605437cd7014b4c7313 Binary files /dev/null and b/models/mask_transformer/__pycache__/__init__.cpython-310.pyc differ diff --git a/models/mask_transformer/__pycache__/tools.cpython-310.pyc b/models/mask_transformer/__pycache__/tools.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b66fea9955220dd81cee43287ff0899ea31c49a0 Binary files /dev/null and b/models/mask_transformer/__pycache__/tools.cpython-310.pyc differ diff --git a/models/mask_transformer/__pycache__/transformer.cpython-310.pyc b/models/mask_transformer/__pycache__/transformer.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6db1eae170b5e87601c2e127f044f43eebedd5e1 Binary files /dev/null and b/models/mask_transformer/__pycache__/transformer.cpython-310.pyc differ diff --git a/models/mask_transformer/__pycache__/transformer_trainer.cpython-310.pyc b/models/mask_transformer/__pycache__/transformer_trainer.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1b5e6d36ba190dc32b6ff8f3e0d94d8d6cfc2c73 Binary files /dev/null and b/models/mask_transformer/__pycache__/transformer_trainer.cpython-310.pyc differ diff --git a/models/mask_transformer/tools.py b/models/mask_transformer/tools.py new file mode 100644 index 0000000000000000000000000000000000000000..1911aafd44ef8133b6278450301a0f85362d29e6 --- /dev/null +++ b/models/mask_transformer/tools.py @@ -0,0 +1,165 @@ +import torch +import torch.nn.functional as F +import math +from einops import rearrange + +# return mask where padding is FALSE +def lengths_to_mask(lengths, max_len): + # max_len = max(lengths) + mask = torch.arange(max_len, device=lengths.device).expand(len(lengths), max_len) < lengths.unsqueeze(1) + return mask #(b, len) + +# return mask where padding is ALL FALSE +def get_pad_mask_idx(seq, pad_idx): + return (seq != pad_idx).unsqueeze(1) + +# Given seq: (b, s) +# Return mat: (1, s, s) +# Example Output: +# [[[ True, False, False], +# [ True, True, False], +# [ True, True, True]]] +# For causal attention +def get_subsequent_mask(seq): + sz_b, seq_len = seq.shape + subsequent_mask = (1 - torch.triu( + torch.ones((1, seq_len, seq_len)), diagonal=1)).bool() + return subsequent_mask.to(seq.device) + + +def exists(val): + return val is not None + +def default(val, d): + return val if exists(val) else d + +def eval_decorator(fn): + def inner(model, *args, **kwargs): + was_training = model.training + model.eval() + out = fn(model, *args, **kwargs) + model.train(was_training) + return out + return inner + +def l2norm(t): + return F.normalize(t, dim = -1) + +# tensor helpers + +# Get a random subset of TRUE mask, with prob +def get_mask_subset_prob(mask, prob): + subset_mask = torch.bernoulli(mask, p=prob) & mask + return subset_mask + + +# Get mask of special_tokens in ids +def get_mask_special_tokens(ids, special_ids): + mask = torch.zeros_like(ids).bool() + for special_id in special_ids: + mask |= (ids==special_id) + return mask + +# network builder helpers +def _get_activation_fn(activation): + if activation == "relu": + return F.relu + elif activation == "gelu": + return F.gelu + + raise RuntimeError("activation should be relu/gelu, not {}".format(activation)) + +# classifier free guidance functions + +def uniform(shape, device=None): + return torch.zeros(shape, device=device).float().uniform_(0, 1) + +def prob_mask_like(shape, prob, device=None): + if prob == 1: + return torch.ones(shape, device=device, dtype=torch.bool) + elif prob == 0: + return torch.zeros(shape, device=device, dtype=torch.bool) + else: + return uniform(shape, device=device) < prob + +# sampling helpers + +def log(t, eps = 1e-20): + return torch.log(t.clamp(min = eps)) + +def gumbel_noise(t): + noise = torch.zeros_like(t).uniform_(0, 1) + return -log(-log(noise)) + +def gumbel_sample(t, temperature = 1., dim = 1): + return ((t / max(temperature, 1e-10)) + gumbel_noise(t)).argmax(dim=dim) + + +# Example input: +# [[ 0.3596, 0.0862, 0.9771, -1.0000, -1.0000, -1.0000], +# [ 0.4141, 0.1781, 0.6628, 0.5721, -1.0000, -1.0000], +# [ 0.9428, 0.3586, 0.1659, 0.8172, 0.9273, -1.0000]] +# Example output: +# [[ -inf, -inf, 0.9771, -inf, -inf, -inf], +# [ -inf, -inf, 0.6628, -inf, -inf, -inf], +# [0.9428, -inf, -inf, -inf, -inf, -inf]] +def top_k(logits, thres = 0.9, dim = 1): + k = math.ceil((1 - thres) * logits.shape[dim]) + val, ind = logits.topk(k, dim = dim) + probs = torch.full_like(logits, float('-inf')) + probs.scatter_(dim, ind, val) + # func verified + # print(probs) + # print(logits) + # raise + return probs + +# noise schedules + +# More on large value, less on small +def cosine_schedule(t): + return torch.cos(t * math.pi * 0.5) + +def scale_cosine_schedule(t, scale): + return torch.clip(scale*torch.cos(t * math.pi * 0.5) + 1 - scale, min=0., max=1.) + +# More on small value, less on large +def q_schedule(bs, low, high, device): + noise = uniform((bs,), device=device) + schedule = 1 - cosine_schedule(noise) + return torch.round(schedule * (high - low - 1)).long() + low + +def cal_performance(pred, labels, ignore_index=None, smoothing=0., tk=1): + loss = cal_loss(pred, labels, ignore_index, smoothing=smoothing) + # pred_id = torch.argmax(pred, dim=1) + # mask = labels.ne(ignore_index) + # n_correct = pred_id.eq(labels).masked_select(mask) + # acc = torch.mean(n_correct.float()).item() + pred_id_k = torch.topk(pred, k=tk, dim=1).indices + pred_id = pred_id_k[:, 0] + mask = labels.ne(ignore_index) + n_correct = (pred_id_k == labels.unsqueeze(1)).any(dim=1).masked_select(mask) + acc = torch.mean(n_correct.float()).item() + + return loss, pred_id, acc + + +def cal_loss(pred, labels, ignore_index=None, smoothing=0.): + '''Calculate cross entropy loss, apply label smoothing if needed.''' + # print(pred.shape, labels.shape) #torch.Size([64, 1028, 55]) torch.Size([64, 55]) + # print(pred.shape, labels.shape) #torch.Size([64, 1027, 55]) torch.Size([64, 55]) + if smoothing: + space = 2 + n_class = pred.size(1) + mask = labels.ne(ignore_index) + one_hot = rearrange(F.one_hot(labels, n_class + space), 'a ... b -> a b ...')[:, :n_class] + # one_hot = torch.zeros_like(pred).scatter(1, labels.unsqueeze(1), 1) + sm_one_hot = one_hot * (1 - smoothing) + (1 - one_hot) * smoothing / (n_class - 1) + neg_log_prb = -F.log_softmax(pred, dim=1) + loss = (sm_one_hot * neg_log_prb).sum(dim=1) + # loss = F.cross_entropy(pred, sm_one_hot, reduction='none') + loss = torch.mean(loss.masked_select(mask)) + else: + loss = F.cross_entropy(pred, labels, ignore_index=ignore_index) + + return loss \ No newline at end of file diff --git a/models/mask_transformer/transformer.py b/models/mask_transformer/transformer.py new file mode 100644 index 0000000000000000000000000000000000000000..4d02b62e6a85c0ea756908f6c59a9ae17bc71cc3 --- /dev/null +++ b/models/mask_transformer/transformer.py @@ -0,0 +1,1039 @@ +import torch +import torch.nn as nn +import numpy as np +# from networks.layers import * +import torch.nn.functional as F +import clip +from einops import rearrange, repeat +import math +from random import random +from tqdm.auto import tqdm +from typing import Callable, Optional, List, Dict +from copy import deepcopy +from functools import partial +from models.mask_transformer.tools import * +from torch.distributions.categorical import Categorical + +class InputProcess(nn.Module): + def __init__(self, input_feats, latent_dim): + super().__init__() + self.input_feats = input_feats + self.latent_dim = latent_dim + self.poseEmbedding = nn.Linear(self.input_feats, self.latent_dim) + + def forward(self, x): + # [bs, ntokens, input_feats] + x = x.permute((1, 0, 2)) # [seqen, bs, input_feats] + # print(x.shape) + x = self.poseEmbedding(x) # [seqlen, bs, d] + return x + +class PositionalEncoding(nn.Module): + #Borrow from MDM, the same as above, but add dropout, exponential may improve precision + def __init__(self, d_model, dropout=0.1, max_len=5000): + super(PositionalEncoding, self).__init__() + self.dropout = nn.Dropout(p=dropout) + + pe = torch.zeros(max_len, d_model) + position = torch.arange(0, max_len, dtype=torch.float).unsqueeze(1) + div_term = torch.exp(torch.arange(0, d_model, 2).float() * (-np.log(10000.0) / d_model)) + pe[:, 0::2] = torch.sin(position * div_term) + pe[:, 1::2] = torch.cos(position * div_term) + pe = pe.unsqueeze(0).transpose(0, 1) #[max_len, 1, d_model] + + self.register_buffer('pe', pe) + + def forward(self, x): + # not used in the final model + x = x + self.pe[:x.shape[0], :] + return self.dropout(x) + +class OutputProcess_Bert(nn.Module): + def __init__(self, out_feats, latent_dim): + super().__init__() + self.dense = nn.Linear(latent_dim, latent_dim) + self.transform_act_fn = F.gelu + self.LayerNorm = nn.LayerNorm(latent_dim, eps=1e-12) + self.poseFinal = nn.Linear(latent_dim, out_feats) #Bias! + + def forward(self, hidden_states: torch.Tensor) -> torch.Tensor: + hidden_states = self.dense(hidden_states) + hidden_states = self.transform_act_fn(hidden_states) + hidden_states = self.LayerNorm(hidden_states) + output = self.poseFinal(hidden_states) # [seqlen, bs, out_feats] + output = output.permute(1, 2, 0) # [bs, c, seqlen] + return output + +class OutputProcess(nn.Module): + def __init__(self, out_feats, latent_dim): + super().__init__() + self.dense = nn.Linear(latent_dim, latent_dim) + self.transform_act_fn = F.gelu + self.LayerNorm = nn.LayerNorm(latent_dim, eps=1e-12) + self.poseFinal = nn.Linear(latent_dim, out_feats) #Bias! + + def forward(self, hidden_states: torch.Tensor) -> torch.Tensor: + hidden_states = self.dense(hidden_states) + hidden_states = self.transform_act_fn(hidden_states) + hidden_states = self.LayerNorm(hidden_states) + output = self.poseFinal(hidden_states) # [seqlen, bs, out_feats] + output = output.permute(1, 2, 0) # [bs, e, seqlen] + return output + + +class MaskTransformer(nn.Module): + def __init__(self, code_dim, cond_mode, latent_dim=256, ff_size=1024, num_layers=8, + num_heads=4, dropout=0.1, clip_dim=512, cond_drop_prob=0.1, + clip_version=None, opt=None, **kargs): + super(MaskTransformer, self).__init__() + print(f'latent_dim: {latent_dim}, ff_size: {ff_size}, nlayers: {num_layers}, nheads: {num_heads}, dropout: {dropout}') + + self.code_dim = code_dim + self.latent_dim = latent_dim + self.clip_dim = clip_dim + self.dropout = dropout + self.opt = opt + + self.cond_mode = cond_mode + self.cond_drop_prob = cond_drop_prob + + if self.cond_mode == 'action': + assert 'num_actions' in kargs + self.num_actions = kargs.get('num_actions', 1) + + ''' + Preparing Networks + ''' + self.input_process = InputProcess(self.code_dim, self.latent_dim) + self.position_enc = PositionalEncoding(self.latent_dim, self.dropout) + + seqTransEncoderLayer = nn.TransformerEncoderLayer(d_model=self.latent_dim, + nhead=num_heads, + dim_feedforward=ff_size, + dropout=dropout, + activation='gelu') + + self.seqTransEncoder = nn.TransformerEncoder(seqTransEncoderLayer, + num_layers=num_layers) + + self.encode_action = partial(F.one_hot, num_classes=self.num_actions) + + # if self.cond_mode != 'no_cond': + if self.cond_mode == 'text': + self.cond_emb = nn.Linear(self.clip_dim, self.latent_dim) + elif self.cond_mode == 'action': + self.cond_emb = nn.Linear(self.num_actions, self.latent_dim) + elif self.cond_mode == 'uncond': + self.cond_emb = nn.Identity() + else: + raise KeyError("Unsupported condition mode!!!") + + + _num_tokens = opt.num_tokens + 2 # two dummy tokens, one for masking, one for padding + self.mask_id = opt.num_tokens + self.pad_id = opt.num_tokens + 1 + + self.output_process = OutputProcess_Bert(out_feats=opt.num_tokens, latent_dim=latent_dim) + + self.token_emb = nn.Embedding(_num_tokens, self.code_dim) + + self.apply(self.__init_weights) + + ''' + Preparing frozen weights + ''' + + if self.cond_mode == 'text': + print('Loading CLIP...') + self.clip_version = clip_version + self.clip_model = self.load_and_freeze_clip(clip_version) + + self.noise_schedule = cosine_schedule + + def load_and_freeze_token_emb(self, codebook): + ''' + :param codebook: (c, d) + :return: + ''' + assert self.training, 'Only necessary in training mode' + c, d = codebook.shape + self.token_emb.weight = nn.Parameter(torch.cat([codebook, torch.zeros(size=(2, d), device=codebook.device)], dim=0)) #add two dummy tokens, 0 vectors + self.token_emb.requires_grad_(False) + # self.token_emb.weight.requires_grad = False + # self.token_emb_ready = True + print("Token embedding initialized!") + + def __init_weights(self, module): + if isinstance(module, (nn.Linear, nn.Embedding)): + module.weight.data.normal_(mean=0.0, std=0.02) + if isinstance(module, nn.Linear) and module.bias is not None: + module.bias.data.zero_() + elif isinstance(module, nn.LayerNorm): + module.bias.data.zero_() + module.weight.data.fill_(1.0) + + def parameters_wo_clip(self): + return [p for name, p in self.named_parameters() if not name.startswith('clip_model.')] + + def load_and_freeze_clip(self, clip_version): + clip_model, clip_preprocess = clip.load(clip_version, device='cpu', + jit=False) # Must set jit=False for training + # Cannot run on cpu + clip.model.convert_weights( + clip_model) # Actually this line is unnecessary since clip by default already on float16 + # Date 0707: It's necessary, only unecessary when load directly to gpu. Disable if need to run on cpu + + # Freeze CLIP weights + clip_model.eval() + for p in clip_model.parameters(): + p.requires_grad = False + + return clip_model + + def encode_text(self, raw_text): + device = next(self.parameters()).device + text = clip.tokenize(raw_text, truncate=True).to(device) + feat_clip_text = self.clip_model.encode_text(text).float() + return feat_clip_text + + def mask_cond(self, cond, force_mask=False): + bs, d = cond.shape + if force_mask: + return torch.zeros_like(cond) + elif self.training and self.cond_drop_prob > 0.: + mask = torch.bernoulli(torch.ones(bs, device=cond.device) * self.cond_drop_prob).view(bs, 1) + return cond * (1. - mask) + else: + return cond + + def trans_forward(self, motion_ids, cond, padding_mask, force_mask=False): + ''' + :param motion_ids: (b, seqlen) + :padding_mask: (b, seqlen), all pad positions are TRUE else FALSE + :param cond: (b, embed_dim) for text, (b, num_actions) for action + :param force_mask: boolean + :return: + -logits: (b, num_token, seqlen) + ''' + + cond = self.mask_cond(cond, force_mask=force_mask) + + # print(motion_ids.shape) + x = self.token_emb(motion_ids) + # print(x.shape) + # (b, seqlen, d) -> (seqlen, b, latent_dim) + x = self.input_process(x) + + cond = self.cond_emb(cond).unsqueeze(0) #(1, b, latent_dim) + + x = self.position_enc(x) + xseq = torch.cat([cond, x], dim=0) #(seqlen+1, b, latent_dim) + + padding_mask = torch.cat([torch.zeros_like(padding_mask[:, 0:1]), padding_mask], dim=1) #(b, seqlen+1) + # print(xseq.shape, padding_mask.shape) + + # print(padding_mask.shape, xseq.shape) + + output = self.seqTransEncoder(xseq, src_key_padding_mask=padding_mask)[1:] #(seqlen, b, e) + logits = self.output_process(output) #(seqlen, b, e) -> (b, ntoken, seqlen) + return logits + + def forward(self, ids, y, m_lens): + ''' + :param ids: (b, n) + :param y: raw text for cond_mode=text, (b, ) for cond_mode=action + :m_lens: (b,) + :return: + ''' + + bs, ntokens = ids.shape + device = ids.device + + # Positions that are PADDED are ALL FALSE + non_pad_mask = lengths_to_mask(m_lens, ntokens) #(b, n) + ids = torch.where(non_pad_mask, ids, self.pad_id) + + force_mask = False + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(y) + elif self.cond_mode == 'action': + cond_vector = self.enc_action(y).to(device).float() + elif self.cond_mode == 'uncond': + cond_vector = torch.zeros(bs, self.latent_dim).float().to(device) + force_mask = True + else: + raise NotImplementedError("Unsupported condition mode!!!") + + + ''' + Prepare mask + ''' + rand_time = uniform((bs,), device=device) + rand_mask_probs = self.noise_schedule(rand_time) + num_token_masked = (ntokens * rand_mask_probs).round().clamp(min=1) + + batch_randperm = torch.rand((bs, ntokens), device=device).argsort(dim=-1) + # Positions to be MASKED are ALL TRUE + mask = batch_randperm < num_token_masked.unsqueeze(-1) + + # Positions to be MASKED must also be NON-PADDED + mask &= non_pad_mask + + # Note this is our training target, not input + labels = torch.where(mask, ids, self.mask_id) + + x_ids = ids.clone() + + # Further Apply Bert Masking Scheme + # Step 1: 10% replace with an incorrect token + mask_rid = get_mask_subset_prob(mask, 0.1) + rand_id = torch.randint_like(x_ids, high=self.opt.num_tokens) + x_ids = torch.where(mask_rid, rand_id, x_ids) + # Step 2: 90% x 10% replace with correct token, and 90% x 88% replace with mask token + mask_mid = get_mask_subset_prob(mask & ~mask_rid, 0.88) + + # mask_mid = mask + + x_ids = torch.where(mask_mid, self.mask_id, x_ids) + + logits = self.trans_forward(x_ids, cond_vector, ~non_pad_mask, force_mask) + ce_loss, pred_id, acc = cal_performance(logits, labels, ignore_index=self.mask_id) + + return ce_loss, pred_id, acc + + def forward_with_cond_scale(self, + motion_ids, + cond_vector, + padding_mask, + cond_scale=3, + force_mask=False): + # bs = motion_ids.shape[0] + # if cond_scale == 1: + if force_mask: + return self.trans_forward(motion_ids, cond_vector, padding_mask, force_mask=True) + + logits = self.trans_forward(motion_ids, cond_vector, padding_mask) + if cond_scale == 1: + return logits + + aux_logits = self.trans_forward(motion_ids, cond_vector, padding_mask, force_mask=True) + + scaled_logits = aux_logits + (logits - aux_logits) * cond_scale + return scaled_logits + + @torch.no_grad() + @eval_decorator + def generate(self, + conds, + m_lens, + timesteps: int, + cond_scale: int, + temperature=1, + topk_filter_thres=0.9, + gsample=False, + force_mask=False + ): + # print(self.opt.num_quantizers) + # assert len(timesteps) >= len(cond_scales) == self.opt.num_quantizers + + device = next(self.parameters()).device + seq_len = max(m_lens) + batch_size = len(m_lens) + + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(conds) + elif self.cond_mode == 'action': + cond_vector = self.enc_action(conds).to(device) + elif self.cond_mode == 'uncond': + cond_vector = torch.zeros(batch_size, self.latent_dim).float().to(device) + else: + raise NotImplementedError("Unsupported condition mode!!!") + + padding_mask = ~lengths_to_mask(m_lens, seq_len) + # print(padding_mask.shape, ) + + # Start from all tokens being masked + ids = torch.where(padding_mask, self.pad_id, self.mask_id) + scores = torch.where(padding_mask, 1e5, 0.) + starting_temperature = temperature + + for timestep, steps_until_x0 in zip(torch.linspace(0, 1, timesteps, device=device), reversed(range(timesteps))): + # 0 < timestep < 1 + rand_mask_prob = self.noise_schedule(timestep) # Tensor + + ''' + Maskout, and cope with variable length + ''' + # fix: the ratio regarding lengths, instead of seq_len + num_token_masked = torch.round(rand_mask_prob * m_lens).clamp(min=1) # (b, ) + + # select num_token_masked tokens with lowest scores to be masked + sorted_indices = scores.argsort( + dim=1) # (b, k), sorted_indices[i, j] = the index of j-th lowest element in scores on dim=1 + ranks = sorted_indices.argsort(dim=1) # (b, k), rank[i, j] = the rank (0: lowest) of scores[i, j] on dim=1 + is_mask = (ranks < num_token_masked.unsqueeze(-1)) + ids = torch.where(is_mask, self.mask_id, ids) + + ''' + Preparing input + ''' + # (b, num_token, seqlen) + logits = self.forward_with_cond_scale(ids, cond_vector=cond_vector, + padding_mask=padding_mask, + cond_scale=cond_scale, + force_mask=force_mask) + + logits = logits.permute(0, 2, 1) # (b, seqlen, ntoken) + # print(logits.shape, self.opt.num_tokens) + # clean low prob token + filtered_logits = top_k(logits, topk_filter_thres, dim=-1) + + ''' + Update ids + ''' + # if force_mask: + temperature = starting_temperature + # else: + # temperature = starting_temperature * (steps_until_x0 / timesteps) + # temperature = max(temperature, 1e-4) + # print(filtered_logits.shape) + # temperature is annealed, gradually reducing temperature as well as randomness + if gsample: # use gumbel_softmax sampling + # print("1111") + pred_ids = gumbel_sample(filtered_logits, temperature=temperature, dim=-1) # (b, seqlen) + else: # use multinomial sampling + # print("2222") + probs = F.softmax(filtered_logits, dim=-1) # (b, seqlen, ntoken) + # print(temperature, starting_temperature, steps_until_x0, timesteps) + # print(probs / temperature) + pred_ids = Categorical(probs / temperature).sample() # (b, seqlen) + + # print(pred_ids.max(), pred_ids.min()) + # if pred_ids. + ids = torch.where(is_mask, pred_ids, ids) + + ''' + Updating scores + ''' + probs_without_temperature = logits.softmax(dim=-1) # (b, seqlen, ntoken) + scores = probs_without_temperature.gather(2, pred_ids.unsqueeze(dim=-1)) # (b, seqlen, 1) + scores = scores.squeeze(-1) # (b, seqlen) + + # We do not want to re-mask the previously kept tokens, or pad tokens + scores = scores.masked_fill(~is_mask, 1e5) + + ids = torch.where(padding_mask, -1, ids) + # print("Final", ids.max(), ids.min()) + return ids + + + @torch.no_grad() + @eval_decorator + def edit(self, + conds, + tokens, + m_lens, + timesteps: int, + cond_scale: int, + temperature=1, + topk_filter_thres=0.9, + gsample=False, + force_mask=False, + edit_mask=None, + padding_mask=None, + ): + + assert edit_mask.shape == tokens.shape if edit_mask is not None else True + device = next(self.parameters()).device + seq_len = tokens.shape[1] + + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(conds) + elif self.cond_mode == 'action': + cond_vector = self.enc_action(conds).to(device) + elif self.cond_mode == 'uncond': + cond_vector = torch.zeros(1, self.latent_dim).float().to(device) + else: + raise NotImplementedError("Unsupported condition mode!!!") + + if padding_mask == None: + padding_mask = ~lengths_to_mask(m_lens, seq_len) + + # Start from all tokens being masked + if edit_mask == None: + mask_free = True + ids = torch.where(padding_mask, self.pad_id, tokens) + edit_mask = torch.ones_like(padding_mask) + edit_mask = edit_mask & ~padding_mask + edit_len = edit_mask.sum(dim=-1) + scores = torch.where(edit_mask, 0., 1e5) + else: + mask_free = False + edit_mask = edit_mask & ~padding_mask + edit_len = edit_mask.sum(dim=-1) + ids = torch.where(edit_mask, self.mask_id, tokens) + scores = torch.where(edit_mask, 0., 1e5) + starting_temperature = temperature + + for timestep, steps_until_x0 in zip(torch.linspace(0, 1, timesteps, device=device), reversed(range(timesteps))): + # 0 < timestep < 1 + rand_mask_prob = 0.16 if mask_free else self.noise_schedule(timestep) # Tensor + + ''' + Maskout, and cope with variable length + ''' + # fix: the ratio regarding lengths, instead of seq_len + num_token_masked = torch.round(rand_mask_prob * edit_len).clamp(min=1) # (b, ) + + # select num_token_masked tokens with lowest scores to be masked + sorted_indices = scores.argsort( + dim=1) # (b, k), sorted_indices[i, j] = the index of j-th lowest element in scores on dim=1 + ranks = sorted_indices.argsort(dim=1) # (b, k), rank[i, j] = the rank (0: lowest) of scores[i, j] on dim=1 + is_mask = (ranks < num_token_masked.unsqueeze(-1)) + # is_mask = (torch.rand_like(scores) < 0.8) * ~padding_mask if mask_free else is_mask + ids = torch.where(is_mask, self.mask_id, ids) + + ''' + Preparing input + ''' + # (b, num_token, seqlen) + logits = self.forward_with_cond_scale(ids, cond_vector=cond_vector, + padding_mask=padding_mask, + cond_scale=cond_scale, + force_mask=force_mask) + + logits = logits.permute(0, 2, 1) # (b, seqlen, ntoken) + # print(logits.shape, self.opt.num_tokens) + # clean low prob token + filtered_logits = top_k(logits, topk_filter_thres, dim=-1) + + ''' + Update ids + ''' + # if force_mask: + temperature = starting_temperature + # else: + # temperature = starting_temperature * (steps_until_x0 / timesteps) + # temperature = max(temperature, 1e-4) + # print(filtered_logits.shape) + # temperature is annealed, gradually reducing temperature as well as randomness + if gsample: # use gumbel_softmax sampling + # print("1111") + pred_ids = gumbel_sample(filtered_logits, temperature=temperature, dim=-1) # (b, seqlen) + else: # use multinomial sampling + # print("2222") + probs = F.softmax(filtered_logits, dim=-1) # (b, seqlen, ntoken) + # print(temperature, starting_temperature, steps_until_x0, timesteps) + # print(probs / temperature) + pred_ids = Categorical(probs / temperature).sample() # (b, seqlen) + + # print(pred_ids.max(), pred_ids.min()) + # if pred_ids. + ids = torch.where(is_mask, pred_ids, ids) + + ''' + Updating scores + ''' + probs_without_temperature = logits.softmax(dim=-1) # (b, seqlen, ntoken) + scores = probs_without_temperature.gather(2, pred_ids.unsqueeze(dim=-1)) # (b, seqlen, 1) + scores = scores.squeeze(-1) # (b, seqlen) + + # We do not want to re-mask the previously kept tokens, or pad tokens + scores = scores.masked_fill(~edit_mask, 1e5) if mask_free else scores.masked_fill(~is_mask, 1e5) + + ids = torch.where(padding_mask, -1, ids) + # print("Final", ids.max(), ids.min()) + return ids + + @torch.no_grad() + @eval_decorator + def edit_beta(self, + conds, + conds_og, + tokens, + m_lens, + cond_scale: int, + force_mask=False, + ): + + device = next(self.parameters()).device + seq_len = tokens.shape[1] + + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(conds) + if conds_og is not None: + cond_vector_og = self.encode_text(conds_og) + else: + cond_vector_og = None + elif self.cond_mode == 'action': + cond_vector = self.enc_action(conds).to(device) + if conds_og is not None: + cond_vector_og = self.enc_action(conds_og).to(device) + else: + cond_vector_og = None + else: + raise NotImplementedError("Unsupported condition mode!!!") + + padding_mask = ~lengths_to_mask(m_lens, seq_len) + + # Start from all tokens being masked + ids = torch.where(padding_mask, self.pad_id, tokens) # Do not mask anything + + ''' + Preparing input + ''' + # (b, num_token, seqlen) + logits = self.forward_with_cond_scale(ids, + cond_vector=cond_vector, + cond_vector_neg=cond_vector_og, + padding_mask=padding_mask, + cond_scale=cond_scale, + force_mask=force_mask) + + logits = logits.permute(0, 2, 1) # (b, seqlen, ntoken) + + ''' + Updating scores + ''' + probs_without_temperature = logits.softmax(dim=-1) # (b, seqlen, ntoken) + tokens[tokens == -1] = 0 # just to get through an error when index = -1 using gather + og_tokens_scores = probs_without_temperature.gather(2, tokens.unsqueeze(dim=-1)) # (b, seqlen, 1) + og_tokens_scores = og_tokens_scores.squeeze(-1) # (b, seqlen) + + return og_tokens_scores + + +class ResidualTransformer(nn.Module): + def __init__(self, code_dim, cond_mode, latent_dim=256, ff_size=1024, num_layers=8, cond_drop_prob=0.1, + num_heads=4, dropout=0.1, clip_dim=512, shared_codebook=False, share_weight=False, + clip_version=None, opt=None, **kargs): + super(ResidualTransformer, self).__init__() + print(f'latent_dim: {latent_dim}, ff_size: {ff_size}, nlayers: {num_layers}, nheads: {num_heads}, dropout: {dropout}') + + # assert shared_codebook == True, "Only support shared codebook right now!" + + self.code_dim = code_dim + self.latent_dim = latent_dim + self.clip_dim = clip_dim + self.dropout = dropout + self.opt = opt + + self.cond_mode = cond_mode + # self.cond_drop_prob = cond_drop_prob + + if self.cond_mode == 'action': + assert 'num_actions' in kargs + self.num_actions = kargs.get('num_actions', 1) + self.cond_drop_prob = cond_drop_prob + + ''' + Preparing Networks + ''' + self.input_process = InputProcess(self.code_dim, self.latent_dim) + self.position_enc = PositionalEncoding(self.latent_dim, self.dropout) + + seqTransEncoderLayer = nn.TransformerEncoderLayer(d_model=self.latent_dim, + nhead=num_heads, + dim_feedforward=ff_size, + dropout=dropout, + activation='gelu') + + self.seqTransEncoder = nn.TransformerEncoder(seqTransEncoderLayer, + num_layers=num_layers) + + self.encode_quant = partial(F.one_hot, num_classes=self.opt.num_quantizers) + self.encode_action = partial(F.one_hot, num_classes=self.num_actions) + + self.quant_emb = nn.Linear(self.opt.num_quantizers, self.latent_dim) + # if self.cond_mode != 'no_cond': + if self.cond_mode == 'text': + self.cond_emb = nn.Linear(self.clip_dim, self.latent_dim) + elif self.cond_mode == 'action': + self.cond_emb = nn.Linear(self.num_actions, self.latent_dim) + else: + raise KeyError("Unsupported condition mode!!!") + + + _num_tokens = opt.num_tokens + 1 # one dummy tokens for padding + self.pad_id = opt.num_tokens + + # self.output_process = OutputProcess_Bert(out_feats=opt.num_tokens, latent_dim=latent_dim) + self.output_process = OutputProcess(out_feats=code_dim, latent_dim=latent_dim) + + if shared_codebook: + token_embed = nn.Parameter(torch.normal(mean=0, std=0.02, size=(_num_tokens, code_dim))) + self.token_embed_weight = token_embed.expand(opt.num_quantizers-1, _num_tokens, code_dim) + if share_weight: + self.output_proj_weight = self.token_embed_weight + self.output_proj_bias = None + else: + output_proj = nn.Parameter(torch.normal(mean=0, std=0.02, size=(_num_tokens, code_dim))) + output_bias = nn.Parameter(torch.zeros(size=(_num_tokens,))) + # self.output_proj_bias = 0 + self.output_proj_weight = output_proj.expand(opt.num_quantizers-1, _num_tokens, code_dim) + self.output_proj_bias = output_bias.expand(opt.num_quantizers-1, _num_tokens) + + else: + if share_weight: + self.embed_proj_shared_weight = nn.Parameter(torch.normal(mean=0, std=0.02, size=(opt.num_quantizers - 2, _num_tokens, code_dim))) + self.token_embed_weight_ = nn.Parameter(torch.normal(mean=0, std=0.02, size=(1, _num_tokens, code_dim))) + self.output_proj_weight_ = nn.Parameter(torch.normal(mean=0, std=0.02, size=(1, _num_tokens, code_dim))) + self.output_proj_bias = None + self.registered = False + else: + output_proj_weight = torch.normal(mean=0, std=0.02, + size=(opt.num_quantizers - 1, _num_tokens, code_dim)) + + self.output_proj_weight = nn.Parameter(output_proj_weight) + self.output_proj_bias = nn.Parameter(torch.zeros(size=(opt.num_quantizers, _num_tokens))) + token_embed_weight = torch.normal(mean=0, std=0.02, + size=(opt.num_quantizers - 1, _num_tokens, code_dim)) + self.token_embed_weight = nn.Parameter(token_embed_weight) + + self.apply(self.__init_weights) + self.shared_codebook = shared_codebook + self.share_weight = share_weight + + if self.cond_mode == 'text': + print('Loading CLIP...') + self.clip_version = clip_version + self.clip_model = self.load_and_freeze_clip(clip_version) + + # def + + def mask_cond(self, cond, force_mask=False): + bs, d = cond.shape + if force_mask: + return torch.zeros_like(cond) + elif self.training and self.cond_drop_prob > 0.: + mask = torch.bernoulli(torch.ones(bs, device=cond.device) * self.cond_drop_prob).view(bs, 1) + return cond * (1. - mask) + else: + return cond + + def __init_weights(self, module): + if isinstance(module, (nn.Linear, nn.Embedding)): + module.weight.data.normal_(mean=0.0, std=0.02) + if isinstance(module, nn.Linear) and module.bias is not None: + module.bias.data.zero_() + elif isinstance(module, nn.LayerNorm): + module.bias.data.zero_() + module.weight.data.fill_(1.0) + + def parameters_wo_clip(self): + return [p for name, p in self.named_parameters() if not name.startswith('clip_model.')] + + def load_and_freeze_clip(self, clip_version): + clip_model, clip_preprocess = clip.load(clip_version, device='cpu', + jit=False) # Must set jit=False for training + # Cannot run on cpu + clip.model.convert_weights( + clip_model) # Actually this line is unnecessary since clip by default already on float16 + # Date 0707: It's necessary, only unecessary when load directly to gpu. Disable if need to run on cpu + + # Freeze CLIP weights + clip_model.eval() + for p in clip_model.parameters(): + p.requires_grad = False + + return clip_model + + def encode_text(self, raw_text): + device = next(self.parameters()).device + text = clip.tokenize(raw_text, truncate=True).to(device) + feat_clip_text = self.clip_model.encode_text(text).float() + return feat_clip_text + + + def q_schedule(self, bs, low, high): + noise = uniform((bs,), device=self.opt.device) + schedule = 1 - cosine_schedule(noise) + return torch.round(schedule * (high - low)) + low + + def process_embed_proj_weight(self): + if self.share_weight and (not self.shared_codebook): + # if not self.registered: + self.output_proj_weight = torch.cat([self.embed_proj_shared_weight, self.output_proj_weight_], dim=0) + self.token_embed_weight = torch.cat([self.token_embed_weight_, self.embed_proj_shared_weight], dim=0) + # self.registered = True + + def output_project(self, logits, qids): + ''' + :logits: (bs, code_dim, seqlen) + :qids: (bs) + + :return: + -logits (bs, ntoken, seqlen) + ''' + # (num_qlayers-1, num_token, code_dim) -> (bs, ntoken, code_dim) + output_proj_weight = self.output_proj_weight[qids] + # (num_qlayers, ntoken) -> (bs, ntoken) + output_proj_bias = None if self.output_proj_bias is None else self.output_proj_bias[qids] + + output = torch.einsum('bnc, bcs->bns', output_proj_weight, logits) + if output_proj_bias is not None: + output += output + output_proj_bias.unsqueeze(-1) + return output + + + + def trans_forward(self, motion_codes, qids, cond, padding_mask, force_mask=False): + ''' + :param motion_codes: (b, seqlen, d) + :padding_mask: (b, seqlen), all pad positions are TRUE else FALSE + :param qids: (b), quantizer layer ids + :param cond: (b, embed_dim) for text, (b, num_actions) for action + :return: + -logits: (b, num_token, seqlen) + ''' + cond = self.mask_cond(cond, force_mask=force_mask) + + # (b, seqlen, d) -> (seqlen, b, latent_dim) + x = self.input_process(motion_codes) + + # (b, num_quantizer) + q_onehot = self.encode_quant(qids).float().to(x.device) + + q_emb = self.quant_emb(q_onehot).unsqueeze(0) # (1, b, latent_dim) + cond = self.cond_emb(cond).unsqueeze(0) # (1, b, latent_dim) + + x = self.position_enc(x) + xseq = torch.cat([cond, q_emb, x], dim=0) # (seqlen+2, b, latent_dim) + + padding_mask = torch.cat([torch.zeros_like(padding_mask[:, 0:2]), padding_mask], dim=1) # (b, seqlen+2) + output = self.seqTransEncoder(xseq, src_key_padding_mask=padding_mask)[2:] # (seqlen, b, e) + logits = self.output_process(output) + return logits + + def forward_with_cond_scale(self, + motion_codes, + q_id, + cond_vector, + padding_mask, + cond_scale=3, + force_mask=False): + bs = motion_codes.shape[0] + # if cond_scale == 1: + qids = torch.full((bs,), q_id, dtype=torch.long, device=motion_codes.device) + if force_mask: + logits = self.trans_forward(motion_codes, qids, cond_vector, padding_mask, force_mask=True) + logits = self.output_project(logits, qids-1) + return logits + + logits = self.trans_forward(motion_codes, qids, cond_vector, padding_mask) + logits = self.output_project(logits, qids-1) + if cond_scale == 1: + return logits + + aux_logits = self.trans_forward(motion_codes, qids, cond_vector, padding_mask, force_mask=True) + aux_logits = self.output_project(aux_logits, qids-1) + + scaled_logits = aux_logits + (logits - aux_logits) * cond_scale + return scaled_logits + + def forward(self, all_indices, y, m_lens): + ''' + :param all_indices: (b, n, q) + :param y: raw text for cond_mode=text, (b, ) for cond_mode=action + :m_lens: (b,) + :return: + ''' + + self.process_embed_proj_weight() + + bs, ntokens, num_quant_layers = all_indices.shape + device = all_indices.device + + # Positions that are PADDED are ALL FALSE + non_pad_mask = lengths_to_mask(m_lens, ntokens) # (b, n) + + q_non_pad_mask = repeat(non_pad_mask, 'b n -> b n q', q=num_quant_layers) + all_indices = torch.where(q_non_pad_mask, all_indices, self.pad_id) #(b, n, q) + + # randomly sample quantization layers to work on, [1, num_q) + active_q_layers = q_schedule(bs, low=1, high=num_quant_layers, device=device) + + # print(self.token_embed_weight.shape, all_indices.shape) + token_embed = repeat(self.token_embed_weight, 'q c d-> b c d q', b=bs) + gather_indices = repeat(all_indices[..., :-1], 'b n q -> b n d q', d=token_embed.shape[2]) + # print(token_embed.shape, gather_indices.shape) + all_codes = token_embed.gather(1, gather_indices) # (b, n, d, q-1) + + cumsum_codes = torch.cumsum(all_codes, dim=-1) #(b, n, d, q-1) + + active_indices = all_indices[torch.arange(bs), :, active_q_layers] # (b, n) + history_sum = cumsum_codes[torch.arange(bs), :, :, active_q_layers - 1] + + force_mask = False + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(y) + elif self.cond_mode == 'action': + cond_vector = self.enc_action(y).to(device).float() + elif self.cond_mode == 'uncond': + cond_vector = torch.zeros(bs, self.latent_dim).float().to(device) + force_mask = True + else: + raise NotImplementedError("Unsupported condition mode!!!") + + logits = self.trans_forward(history_sum, active_q_layers, cond_vector, ~non_pad_mask, force_mask) + logits = self.output_project(logits, active_q_layers-1) + ce_loss, pred_id, acc = cal_performance(logits, active_indices, ignore_index=self.pad_id) + + return ce_loss, pred_id, acc + + @torch.no_grad() + @eval_decorator + def generate(self, + motion_ids, + conds, + m_lens, + temperature=1, + topk_filter_thres=0.9, + cond_scale=2, + num_res_layers=-1, # If it's -1, use all. + ): + + # print(self.opt.num_quantizers) + # assert len(timesteps) >= len(cond_scales) == self.opt.num_quantizers + self.process_embed_proj_weight() + + device = next(self.parameters()).device + seq_len = motion_ids.shape[1] + batch_size = len(conds) + + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(conds) + elif self.cond_mode == 'action': + cond_vector = self.enc_action(conds).to(device) + elif self.cond_mode == 'uncond': + cond_vector = torch.zeros(batch_size, self.latent_dim).float().to(device) + else: + raise NotImplementedError("Unsupported condition mode!!!") + + # token_embed = repeat(self.token_embed_weight, 'c d -> b c d', b=batch_size) + # gathered_ids = repeat(motion_ids, 'b n -> b n d', d=token_embed.shape[-1]) + # history_sum = token_embed.gather(1, gathered_ids) + + # print(pa, seq_len) + padding_mask = ~lengths_to_mask(m_lens, seq_len) + # print(padding_mask.shape, motion_ids.shape) + motion_ids = torch.where(padding_mask, self.pad_id, motion_ids) + all_indices = [motion_ids] + history_sum = 0 + num_quant_layers = self.opt.num_quantizers if num_res_layers==-1 else num_res_layers+1 + + for i in range(1, num_quant_layers): + # print(f"--> Working on {i}-th quantizer") + # Start from all tokens being masked + # qids = torch.full((batch_size,), i, dtype=torch.long, device=motion_ids.device) + token_embed = self.token_embed_weight[i-1] + token_embed = repeat(token_embed, 'c d -> b c d', b=batch_size) + gathered_ids = repeat(motion_ids, 'b n -> b n d', d=token_embed.shape[-1]) + history_sum += token_embed.gather(1, gathered_ids) + + logits = self.forward_with_cond_scale(history_sum, i, cond_vector, padding_mask, cond_scale=cond_scale) + # logits = self.trans_forward(history_sum, qids, cond_vector, padding_mask) + + logits = logits.permute(0, 2, 1) # (b, seqlen, ntoken) + # clean low prob token + filtered_logits = top_k(logits, topk_filter_thres, dim=-1) + + pred_ids = gumbel_sample(filtered_logits, temperature=temperature, dim=-1) # (b, seqlen) + + # probs = F.softmax(filtered_logits, dim=-1) # (b, seqlen, ntoken) + # # print(temperature, starting_temperature, steps_until_x0, timesteps) + # # print(probs / temperature) + # pred_ids = Categorical(probs / temperature).sample() # (b, seqlen) + + ids = torch.where(padding_mask, self.pad_id, pred_ids) + + motion_ids = ids + all_indices.append(ids) + + all_indices = torch.stack(all_indices, dim=-1) + # padding_mask = repeat(padding_mask, 'b n -> b n q', q=all_indices.shape[-1]) + # all_indices = torch.where(padding_mask, -1, all_indices) + all_indices = torch.where(all_indices==self.pad_id, -1, all_indices) + # all_indices = all_indices.masked_fill() + return all_indices + + @torch.no_grad() + @eval_decorator + def edit(self, + motion_ids, + conds, + m_lens, + temperature=1, + topk_filter_thres=0.9, + cond_scale=2 + ): + + # print(self.opt.num_quantizers) + # assert len(timesteps) >= len(cond_scales) == self.opt.num_quantizers + self.process_embed_proj_weight() + + device = next(self.parameters()).device + seq_len = motion_ids.shape[1] + batch_size = len(conds) + + if self.cond_mode == 'text': + with torch.no_grad(): + cond_vector = self.encode_text(conds) + elif self.cond_mode == 'action': + cond_vector = self.enc_action(conds).to(device) + elif self.cond_mode == 'uncond': + cond_vector = torch.zeros(batch_size, self.latent_dim).float().to(device) + else: + raise NotImplementedError("Unsupported condition mode!!!") + + # token_embed = repeat(self.token_embed_weight, 'c d -> b c d', b=batch_size) + # gathered_ids = repeat(motion_ids, 'b n -> b n d', d=token_embed.shape[-1]) + # history_sum = token_embed.gather(1, gathered_ids) + + # print(pa, seq_len) + padding_mask = ~lengths_to_mask(m_lens, seq_len) + # print(padding_mask.shape, motion_ids.shape) + motion_ids = torch.where(padding_mask, self.pad_id, motion_ids) + all_indices = [motion_ids] + history_sum = 0 + + for i in range(1, self.opt.num_quantizers): + # print(f"--> Working on {i}-th quantizer") + # Start from all tokens being masked + # qids = torch.full((batch_size,), i, dtype=torch.long, device=motion_ids.device) + token_embed = self.token_embed_weight[i-1] + token_embed = repeat(token_embed, 'c d -> b c d', b=batch_size) + gathered_ids = repeat(motion_ids, 'b n -> b n d', d=token_embed.shape[-1]) + history_sum += token_embed.gather(1, gathered_ids) + + logits = self.forward_with_cond_scale(history_sum, i, cond_vector, padding_mask, cond_scale=cond_scale) + # logits = self.trans_forward(history_sum, qids, cond_vector, padding_mask) + + logits = logits.permute(0, 2, 1) # (b, seqlen, ntoken) + # clean low prob token + filtered_logits = top_k(logits, topk_filter_thres, dim=-1) + + pred_ids = gumbel_sample(filtered_logits, temperature=temperature, dim=-1) # (b, seqlen) + + # probs = F.softmax(filtered_logits, dim=-1) # (b, seqlen, ntoken) + # # print(temperature, starting_temperature, steps_until_x0, timesteps) + # # print(probs / temperature) + # pred_ids = Categorical(probs / temperature).sample() # (b, seqlen) + + ids = torch.where(padding_mask, self.pad_id, pred_ids) + + motion_ids = ids + all_indices.append(ids) + + all_indices = torch.stack(all_indices, dim=-1) + # padding_mask = repeat(padding_mask, 'b n -> b n q', q=all_indices.shape[-1]) + # all_indices = torch.where(padding_mask, -1, all_indices) + all_indices = torch.where(all_indices==self.pad_id, -1, all_indices) + # all_indices = all_indices.masked_fill() + return all_indices \ No newline at end of file diff --git a/models/mask_transformer/transformer_trainer.py b/models/mask_transformer/transformer_trainer.py new file mode 100644 index 0000000000000000000000000000000000000000..4b6c6c0e4f47789fb01762ea50b785d0acdf91da --- /dev/null +++ b/models/mask_transformer/transformer_trainer.py @@ -0,0 +1,359 @@ +import torch +from collections import defaultdict +import torch.optim as optim +# import tensorflow as tf +from torch.utils.tensorboard import SummaryWriter +from collections import OrderedDict +from utils.utils import * +from os.path import join as pjoin +from utils.eval_t2m import evaluation_mask_transformer, evaluation_res_transformer +from models.mask_transformer.tools import * + +from einops import rearrange, repeat + +def def_value(): + return 0.0 + +class MaskTransformerTrainer: + def __init__(self, args, t2m_transformer, vq_model): + self.opt = args + self.t2m_transformer = t2m_transformer + self.vq_model = vq_model + self.device = args.device + self.vq_model.eval() + + if args.is_train: + self.logger = SummaryWriter(args.log_dir) + + + def update_lr_warm_up(self, nb_iter, warm_up_iter, lr): + + current_lr = lr * (nb_iter + 1) / (warm_up_iter + 1) + for param_group in self.opt_t2m_transformer.param_groups: + param_group["lr"] = current_lr + + return current_lr + + + def forward(self, batch_data): + + conds, motion, m_lens = batch_data + motion = motion.detach().float().to(self.device) + m_lens = m_lens.detach().long().to(self.device) + + # (b, n, q) + code_idx, _ = self.vq_model.encode(motion) + m_lens = m_lens // 4 + + conds = conds.to(self.device).float() if torch.is_tensor(conds) else conds + + # loss_dict = {} + # self.pred_ids = [] + # self.acc = [] + + _loss, _pred_ids, _acc = self.t2m_transformer(code_idx[..., 0], conds, m_lens) + + return _loss, _acc + + def update(self, batch_data): + loss, acc = self.forward(batch_data) + + self.opt_t2m_transformer.zero_grad() + loss.backward() + self.opt_t2m_transformer.step() + self.scheduler.step() + + return loss.item(), acc + + def save(self, file_name, ep, total_it): + t2m_trans_state_dict = self.t2m_transformer.state_dict() + clip_weights = [e for e in t2m_trans_state_dict.keys() if e.startswith('clip_model.')] + for e in clip_weights: + del t2m_trans_state_dict[e] + state = { + 't2m_transformer': t2m_trans_state_dict, + 'opt_t2m_transformer': self.opt_t2m_transformer.state_dict(), + 'scheduler':self.scheduler.state_dict(), + 'ep': ep, + 'total_it': total_it, + } + torch.save(state, file_name) + + def resume(self, model_dir): + checkpoint = torch.load(model_dir, map_location=self.device) + missing_keys, unexpected_keys = self.t2m_transformer.load_state_dict(checkpoint['t2m_transformer'], strict=False) + assert len(unexpected_keys) == 0 + assert all([k.startswith('clip_model.') for k in missing_keys]) + + try: + self.opt_t2m_transformer.load_state_dict(checkpoint['opt_t2m_transformer']) # Optimizer + + self.scheduler.load_state_dict(checkpoint['scheduler']) # Scheduler + except: + print('Resume wo optimizer') + return checkpoint['ep'], checkpoint['total_it'] + + def train(self, train_loader, val_loader, eval_val_loader, eval_wrapper, plot_eval): + self.t2m_transformer.to(self.device) + self.vq_model.to(self.device) + + self.opt_t2m_transformer = optim.AdamW(self.t2m_transformer.parameters(), betas=(0.9, 0.99), lr=self.opt.lr, weight_decay=1e-5) + self.scheduler = optim.lr_scheduler.MultiStepLR(self.opt_t2m_transformer, + milestones=self.opt.milestones, + gamma=self.opt.gamma) + + epoch = 0 + it = 0 + + if self.opt.is_continue: + model_dir = pjoin(self.opt.model_dir, 'latest.tar') # TODO + epoch, it = self.resume(model_dir) + print("Load model epoch:%d iterations:%d"%(epoch, it)) + + start_time = time.time() + total_iters = self.opt.max_epoch * len(train_loader) + print(f'Total Epochs: {self.opt.max_epoch}, Total Iters: {total_iters}') + print('Iters Per Epoch, Training: %04d, Validation: %03d' % (len(train_loader), len(val_loader))) + logs = defaultdict(def_value, OrderedDict()) + + best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer = evaluation_mask_transformer( + self.opt.save_root, eval_val_loader, self.t2m_transformer, self.vq_model, self.logger, epoch, + best_fid=100, best_div=100, + best_top1=0, best_top2=0, best_top3=0, + best_matching=100, eval_wrapper=eval_wrapper, + plot_func=plot_eval, save_ckpt=False, save_anim=False + ) + best_acc = 0. + + while epoch < self.opt.max_epoch: + self.t2m_transformer.train() + self.vq_model.eval() + + for i, batch in enumerate(train_loader): + it += 1 + if it < self.opt.warm_up_iter: + self.update_lr_warm_up(it, self.opt.warm_up_iter, self.opt.lr) + + loss, acc = self.update(batch_data=batch) + logs['loss'] += loss + logs['acc'] += acc + logs['lr'] += self.opt_t2m_transformer.param_groups[0]['lr'] + + if it % self.opt.log_every == 0: + mean_loss = OrderedDict() + # self.logger.add_scalar('val_loss', val_loss, it) + # self.l + for tag, value in logs.items(): + self.logger.add_scalar('Train/%s'%tag, value / self.opt.log_every, it) + mean_loss[tag] = value / self.opt.log_every + logs = defaultdict(def_value, OrderedDict()) + print_current_loss(start_time, it, total_iters, mean_loss, epoch=epoch, inner_iter=i) + + if it % self.opt.save_latest == 0: + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + epoch += 1 + + print('Validation time:') + self.vq_model.eval() + self.t2m_transformer.eval() + + val_loss = [] + val_acc = [] + with torch.no_grad(): + for i, batch_data in enumerate(val_loader): + loss, acc = self.forward(batch_data) + val_loss.append(loss.item()) + val_acc.append(acc) + + print(f"Validation loss:{np.mean(val_loss):.3f}, accuracy:{np.mean(val_acc):.3f}") + + self.logger.add_scalar('Val/loss', np.mean(val_loss), epoch) + self.logger.add_scalar('Val/acc', np.mean(val_acc), epoch) + + if np.mean(val_acc) > best_acc: + print(f"Improved accuracy from {best_acc:.02f} to {np.mean(val_acc)}!!!") + self.save(pjoin(self.opt.model_dir, 'net_best_acc.tar'), epoch, it) + best_acc = np.mean(val_acc) + + best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer = evaluation_mask_transformer( + self.opt.save_root, eval_val_loader, self.t2m_transformer, self.vq_model, self.logger, epoch, best_fid=best_fid, + best_div=best_div, best_top1=best_top1, best_top2=best_top2, best_top3=best_top3, + best_matching=best_matching, eval_wrapper=eval_wrapper, + plot_func=plot_eval, save_ckpt=True, save_anim=(epoch%self.opt.eval_every_e==0) + ) + + +class ResidualTransformerTrainer: + def __init__(self, args, res_transformer, vq_model): + self.opt = args + self.res_transformer = res_transformer + self.vq_model = vq_model + self.device = args.device + self.vq_model.eval() + + if args.is_train: + self.logger = SummaryWriter(args.log_dir) + # self.l1_criterion = torch.nn.SmoothL1Loss() + + + def update_lr_warm_up(self, nb_iter, warm_up_iter, lr): + + current_lr = lr * (nb_iter + 1) / (warm_up_iter + 1) + for param_group in self.opt_res_transformer.param_groups: + param_group["lr"] = current_lr + + return current_lr + + + def forward(self, batch_data): + + conds, motion, m_lens = batch_data + motion = motion.detach().float().to(self.device) + m_lens = m_lens.detach().long().to(self.device) + + # (b, n, q), (q, b, n ,d) + code_idx, all_codes = self.vq_model.encode(motion) + m_lens = m_lens // 4 + + conds = conds.to(self.device).float() if torch.is_tensor(conds) else conds + + ce_loss, pred_ids, acc = self.res_transformer(code_idx, conds, m_lens) + + return ce_loss, acc + + def update(self, batch_data): + loss, acc = self.forward(batch_data) + + self.opt_res_transformer.zero_grad() + loss.backward() + self.opt_res_transformer.step() + self.scheduler.step() + + return loss.item(), acc + + def save(self, file_name, ep, total_it): + res_trans_state_dict = self.res_transformer.state_dict() + clip_weights = [e for e in res_trans_state_dict.keys() if e.startswith('clip_model.')] + for e in clip_weights: + del res_trans_state_dict[e] + state = { + 'res_transformer': res_trans_state_dict, + 'opt_res_transformer': self.opt_res_transformer.state_dict(), + 'scheduler':self.scheduler.state_dict(), + 'ep': ep, + 'total_it': total_it, + } + torch.save(state, file_name) + + def resume(self, model_dir): + checkpoint = torch.load(model_dir, map_location=self.device) + missing_keys, unexpected_keys = self.res_transformer.load_state_dict(checkpoint['res_transformer'], strict=False) + assert len(unexpected_keys) == 0 + assert all([k.startswith('clip_model.') for k in missing_keys]) + + try: + self.opt_res_transformer.load_state_dict(checkpoint['opt_res_transformer']) # Optimizer + + self.scheduler.load_state_dict(checkpoint['scheduler']) # Scheduler + except: + print('Resume wo optimizer') + return checkpoint['ep'], checkpoint['total_it'] + + def train(self, train_loader, val_loader, eval_val_loader, eval_wrapper, plot_eval): + self.res_transformer.to(self.device) + self.vq_model.to(self.device) + + self.opt_res_transformer = optim.AdamW(self.res_transformer.parameters(), betas=(0.9, 0.99), lr=self.opt.lr, weight_decay=1e-5) + self.scheduler = optim.lr_scheduler.MultiStepLR(self.opt_res_transformer, + milestones=self.opt.milestones, + gamma=self.opt.gamma) + + epoch = 0 + it = 0 + + if self.opt.is_continue: + model_dir = pjoin(self.opt.model_dir, 'latest.tar') # TODO + epoch, it = self.resume(model_dir) + print("Load model epoch:%d iterations:%d"%(epoch, it)) + + start_time = time.time() + total_iters = self.opt.max_epoch * len(train_loader) + print(f'Total Epochs: {self.opt.max_epoch}, Total Iters: {total_iters}') + print('Iters Per Epoch, Training: %04d, Validation: %03d' % (len(train_loader), len(val_loader))) + logs = defaultdict(def_value, OrderedDict()) + + best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer = evaluation_res_transformer( + self.opt.save_root, eval_val_loader, self.res_transformer, self.vq_model, self.logger, epoch, + best_fid=100, best_div=100, + best_top1=0, best_top2=0, best_top3=0, + best_matching=100, eval_wrapper=eval_wrapper, + plot_func=plot_eval, save_ckpt=False, save_anim=False + ) + best_loss = 100 + best_acc = 0 + + while epoch < self.opt.max_epoch: + self.res_transformer.train() + self.vq_model.eval() + + for i, batch in enumerate(train_loader): + it += 1 + if it < self.opt.warm_up_iter: + self.update_lr_warm_up(it, self.opt.warm_up_iter, self.opt.lr) + + loss, acc = self.update(batch_data=batch) + logs['loss'] += loss + logs["acc"] += acc + logs['lr'] += self.opt_res_transformer.param_groups[0]['lr'] + + if it % self.opt.log_every == 0: + mean_loss = OrderedDict() + # self.logger.add_scalar('val_loss', val_loss, it) + # self.l + for tag, value in logs.items(): + self.logger.add_scalar('Train/%s'%tag, value / self.opt.log_every, it) + mean_loss[tag] = value / self.opt.log_every + logs = defaultdict(def_value, OrderedDict()) + print_current_loss(start_time, it, total_iters, mean_loss, epoch=epoch, inner_iter=i) + + if it % self.opt.save_latest == 0: + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + epoch += 1 + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + print('Validation time:') + self.vq_model.eval() + self.res_transformer.eval() + + val_loss = [] + val_acc = [] + with torch.no_grad(): + for i, batch_data in enumerate(val_loader): + loss, acc = self.forward(batch_data) + val_loss.append(loss.item()) + val_acc.append(acc) + + print(f"Validation loss:{np.mean(val_loss):.3f}, Accuracy:{np.mean(val_acc):.3f}") + + self.logger.add_scalar('Val/loss', np.mean(val_loss), epoch) + self.logger.add_scalar('Val/acc', np.mean(val_acc), epoch) + + if np.mean(val_loss) < best_loss: + print(f"Improved loss from {best_loss:.02f} to {np.mean(val_loss)}!!!") + self.save(pjoin(self.opt.model_dir, 'net_best_loss.tar'), epoch, it) + best_loss = np.mean(val_loss) + + if np.mean(val_acc) > best_acc: + print(f"Improved acc from {best_acc:.02f} to {np.mean(val_acc)}!!!") + # self.save(pjoin(self.opt.model_dir, 'net_best_loss.tar'), epoch, it) + best_acc = np.mean(val_acc) + + best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer = evaluation_res_transformer( + self.opt.save_root, eval_val_loader, self.res_transformer, self.vq_model, self.logger, epoch, best_fid=best_fid, + best_div=best_div, best_top1=best_top1, best_top2=best_top2, best_top3=best_top3, + best_matching=best_matching, eval_wrapper=eval_wrapper, + plot_func=plot_eval, save_ckpt=True, save_anim=(epoch%self.opt.eval_every_e==0) + ) \ No newline at end of file diff --git a/models/t2m_eval_modules.py b/models/t2m_eval_modules.py new file mode 100644 index 0000000000000000000000000000000000000000..87cbb730da08b9cc0ab4b0d52970ad08435d02dc --- /dev/null +++ b/models/t2m_eval_modules.py @@ -0,0 +1,182 @@ +import torch +import torch.nn as nn +import numpy as np +import time +import math +import random +from torch.nn.utils.rnn import pack_padded_sequence, pad_packed_sequence +# from networks.layers import * + + +def init_weight(m): + if isinstance(m, nn.Conv1d) or isinstance(m, nn.Linear) or isinstance(m, nn.ConvTranspose1d): + nn.init.xavier_normal_(m.weight) + # m.bias.data.fill_(0.01) + if m.bias is not None: + nn.init.constant_(m.bias, 0) + + +# batch_size, dimension and position +# output: (batch_size, dim) +def positional_encoding(batch_size, dim, pos): + assert batch_size == pos.shape[0] + positions_enc = np.array([ + [pos[j] / np.power(10000, (i-i%2)/dim) for i in range(dim)] + for j in range(batch_size) + ], dtype=np.float32) + positions_enc[:, 0::2] = np.sin(positions_enc[:, 0::2]) + positions_enc[:, 1::2] = np.cos(positions_enc[:, 1::2]) + return torch.from_numpy(positions_enc).float() + + +def get_padding_mask(batch_size, seq_len, cap_lens): + cap_lens = cap_lens.data.tolist() + mask_2d = torch.ones((batch_size, seq_len, seq_len), dtype=torch.float32) + for i, cap_len in enumerate(cap_lens): + mask_2d[i, :, :cap_len] = 0 + return mask_2d.bool(), 1 - mask_2d[:, :, 0].clone() + + +def top_k_logits(logits, k): + v, ix = torch.topk(logits, k) + out = logits.clone() + out[out < v[:, [-1]]] = -float('Inf') + return out + + +class PositionalEncoding(nn.Module): + + def __init__(self, d_model, max_len=300): + super(PositionalEncoding, self).__init__() + + pe = torch.zeros(max_len, d_model) + position = torch.arange(0, max_len, dtype=torch.float).unsqueeze(1) + div_term = torch.exp(torch.arange(0, d_model, 2).float() * (-math.log(10000.0) / d_model)) + pe[:, 0::2] = torch.sin(position * div_term) + pe[:, 1::2] = torch.cos(position * div_term) + # pe = pe.unsqueeze(0).transpose(0, 1) + self.register_buffer('pe', pe) + + def forward(self, pos): + return self.pe[pos] + + +class MovementConvEncoder(nn.Module): + def __init__(self, input_size, hidden_size, output_size): + super(MovementConvEncoder, self).__init__() + self.main = nn.Sequential( + nn.Conv1d(input_size, hidden_size, 4, 2, 1), + nn.Dropout(0.2, inplace=True), + nn.LeakyReLU(0.2, inplace=True), + nn.Conv1d(hidden_size, output_size, 4, 2, 1), + nn.Dropout(0.2, inplace=True), + nn.LeakyReLU(0.2, inplace=True), + ) + self.out_net = nn.Linear(output_size, output_size) + self.main.apply(init_weight) + self.out_net.apply(init_weight) + + def forward(self, inputs): + inputs = inputs.permute(0, 2, 1) + outputs = self.main(inputs).permute(0, 2, 1) + # print(outputs.shape) + return self.out_net(outputs) + + +class MovementConvDecoder(nn.Module): + def __init__(self, input_size, hidden_size, output_size): + super(MovementConvDecoder, self).__init__() + self.main = nn.Sequential( + nn.ConvTranspose1d(input_size, hidden_size, 4, 2, 1), + # nn.Dropout(0.2, inplace=True), + nn.LeakyReLU(0.2, inplace=True), + nn.ConvTranspose1d(hidden_size, output_size, 4, 2, 1), + # nn.Dropout(0.2, inplace=True), + nn.LeakyReLU(0.2, inplace=True), + ) + self.out_net = nn.Linear(output_size, output_size) + + self.main.apply(init_weight) + self.out_net.apply(init_weight) + + def forward(self, inputs): + inputs = inputs.permute(0, 2, 1) + outputs = self.main(inputs).permute(0, 2, 1) + return self.out_net(outputs) + +class TextEncoderBiGRUCo(nn.Module): + def __init__(self, word_size, pos_size, hidden_size, output_size, device): + super(TextEncoderBiGRUCo, self).__init__() + self.device = device + + self.pos_emb = nn.Linear(pos_size, word_size) + self.input_emb = nn.Linear(word_size, hidden_size) + self.gru = nn.GRU(hidden_size, hidden_size, batch_first=True, bidirectional=True) + self.output_net = nn.Sequential( + nn.Linear(hidden_size * 2, hidden_size), + nn.LayerNorm(hidden_size), + nn.LeakyReLU(0.2, inplace=True), + nn.Linear(hidden_size, output_size) + ) + + self.input_emb.apply(init_weight) + self.pos_emb.apply(init_weight) + self.output_net.apply(init_weight) + # self.linear2.apply(init_weight) + # self.batch_size = batch_size + self.hidden_size = hidden_size + self.hidden = nn.Parameter(torch.randn((2, 1, self.hidden_size), requires_grad=True)) + + # input(batch_size, seq_len, dim) + def forward(self, word_embs, pos_onehot, cap_lens): + num_samples = word_embs.shape[0] + + pos_embs = self.pos_emb(pos_onehot) + inputs = word_embs + pos_embs + input_embs = self.input_emb(inputs) + hidden = self.hidden.repeat(1, num_samples, 1) + + cap_lens = cap_lens.data.tolist() + emb = pack_padded_sequence(input_embs, cap_lens, batch_first=True) + + gru_seq, gru_last = self.gru(emb, hidden) + + gru_last = torch.cat([gru_last[0], gru_last[1]], dim=-1) + + return self.output_net(gru_last) + + +class MotionEncoderBiGRUCo(nn.Module): + def __init__(self, input_size, hidden_size, output_size, device): + super(MotionEncoderBiGRUCo, self).__init__() + self.device = device + + self.input_emb = nn.Linear(input_size, hidden_size) + self.gru = nn.GRU(hidden_size, hidden_size, batch_first=True, bidirectional=True) + self.output_net = nn.Sequential( + nn.Linear(hidden_size*2, hidden_size), + nn.LayerNorm(hidden_size), + nn.LeakyReLU(0.2, inplace=True), + nn.Linear(hidden_size, output_size) + ) + + self.input_emb.apply(init_weight) + self.output_net.apply(init_weight) + self.hidden_size = hidden_size + self.hidden = nn.Parameter(torch.randn((2, 1, self.hidden_size), requires_grad=True)) + + # input(batch_size, seq_len, dim) + def forward(self, inputs, m_lens): + num_samples = inputs.shape[0] + + input_embs = self.input_emb(inputs) + hidden = self.hidden.repeat(1, num_samples, 1) + + cap_lens = m_lens.data.tolist() + emb = pack_padded_sequence(input_embs, cap_lens, batch_first=True) + + gru_seq, gru_last = self.gru(emb, hidden) + + gru_last = torch.cat([gru_last[0], gru_last[1]], dim=-1) + + return self.output_net(gru_last) \ No newline at end of file diff --git a/models/t2m_eval_wrapper.py b/models/t2m_eval_wrapper.py new file mode 100644 index 0000000000000000000000000000000000000000..39b208995216e1389ee2a7b42143ae485bbdb8f0 --- /dev/null +++ b/models/t2m_eval_wrapper.py @@ -0,0 +1,191 @@ +from models.t2m_eval_modules import * +from utils.word_vectorizer import POS_enumerator +from os.path import join as pjoin + +def build_models(opt): + movement_enc = MovementConvEncoder(opt.dim_pose-4, opt.dim_movement_enc_hidden, opt.dim_movement_latent) + text_enc = TextEncoderBiGRUCo(word_size=opt.dim_word, + pos_size=opt.dim_pos_ohot, + hidden_size=opt.dim_text_hidden, + output_size=opt.dim_coemb_hidden, + device=opt.device) + + motion_enc = MotionEncoderBiGRUCo(input_size=opt.dim_movement_latent, + hidden_size=opt.dim_motion_hidden, + output_size=opt.dim_coemb_hidden, + device=opt.device) + + checkpoint = torch.load(pjoin(opt.checkpoints_dir, opt.dataset_name, 'text_mot_match', 'model', 'finest.tar'), + map_location=opt.device) + movement_enc.load_state_dict(checkpoint['movement_encoder']) + text_enc.load_state_dict(checkpoint['text_encoder']) + motion_enc.load_state_dict(checkpoint['motion_encoder']) + print('Loading Evaluation Model Wrapper (Epoch %d) Completed!!' % (checkpoint['epoch'])) + return text_enc, motion_enc, movement_enc + + +class EvaluatorModelWrapper(object): + + def __init__(self, opt): + + if opt.dataset_name == 't2m': + opt.dim_pose = 263 + elif opt.dataset_name == 'kit': + opt.dim_pose = 251 + else: + raise KeyError('Dataset not Recognized!!!') + + opt.dim_word = 300 + opt.max_motion_length = 196 + opt.dim_pos_ohot = len(POS_enumerator) + opt.dim_motion_hidden = 1024 + opt.max_text_len = 20 + opt.dim_text_hidden = 512 + opt.dim_coemb_hidden = 512 + + # print(opt) + + self.text_encoder, self.motion_encoder, self.movement_encoder = build_models(opt) + self.opt = opt + self.device = opt.device + + self.text_encoder.to(opt.device) + self.motion_encoder.to(opt.device) + self.movement_encoder.to(opt.device) + + self.text_encoder.eval() + self.motion_encoder.eval() + self.movement_encoder.eval() + + # Please note that the results does not follow the order of inputs + def get_co_embeddings(self, word_embs, pos_ohot, cap_lens, motions, m_lens): + with torch.no_grad(): + word_embs = word_embs.detach().to(self.device).float() + pos_ohot = pos_ohot.detach().to(self.device).float() + motions = motions.detach().to(self.device).float() + + align_idx = np.argsort(m_lens.data.tolist())[::-1].copy() + motions = motions[align_idx] + m_lens = m_lens[align_idx] + + '''Movement Encoding''' + movements = self.movement_encoder(motions[..., :-4]).detach() + m_lens = m_lens // self.opt.unit_length + motion_embedding = self.motion_encoder(movements, m_lens) + + '''Text Encoding''' + text_embedding = self.text_encoder(word_embs, pos_ohot, cap_lens) + text_embedding = text_embedding[align_idx] + return text_embedding, motion_embedding + + # Please note that the results does not follow the order of inputs + def get_motion_embeddings(self, motions, m_lens): + with torch.no_grad(): + motions = motions.detach().to(self.device).float() + + align_idx = np.argsort(m_lens.data.tolist())[::-1].copy() + motions = motions[align_idx] + m_lens = m_lens[align_idx] + + '''Movement Encoding''' + movements = self.movement_encoder(motions[..., :-4]).detach() + m_lens = m_lens // self.opt.unit_length + motion_embedding = self.motion_encoder(movements, m_lens) + return motion_embedding + +## Borrowed form MDM +# our version +def build_evaluators(opt): + movement_enc = MovementConvEncoder(opt['dim_pose']-4, opt['dim_movement_enc_hidden'], opt['dim_movement_latent']) + text_enc = TextEncoderBiGRUCo(word_size=opt['dim_word'], + pos_size=opt['dim_pos_ohot'], + hidden_size=opt['dim_text_hidden'], + output_size=opt['dim_coemb_hidden'], + device=opt['device']) + + motion_enc = MotionEncoderBiGRUCo(input_size=opt['dim_movement_latent'], + hidden_size=opt['dim_motion_hidden'], + output_size=opt['dim_coemb_hidden'], + device=opt['device']) + + ckpt_dir = opt['dataset_name'] + if opt['dataset_name'] == 'humanml': + ckpt_dir = 't2m' + + checkpoint = torch.load(pjoin(opt['checkpoints_dir'], ckpt_dir, 'text_mot_match', 'model', 'finest.tar'), + map_location=opt['device']) + movement_enc.load_state_dict(checkpoint['movement_encoder']) + text_enc.load_state_dict(checkpoint['text_encoder']) + motion_enc.load_state_dict(checkpoint['motion_encoder']) + print('Loading Evaluation Model Wrapper (Epoch %d) Completed!!' % (checkpoint['epoch'])) + return text_enc, motion_enc, movement_enc + +# our wrapper +class EvaluatorWrapper(object): + + def __init__(self, dataset_name, device): + opt = { + 'dataset_name': dataset_name, + 'device': device, + 'dim_word': 300, + 'max_motion_length': 196, + 'dim_pos_ohot': len(POS_enumerator), + 'dim_motion_hidden': 1024, + 'max_text_len': 20, + 'dim_text_hidden': 512, + 'dim_coemb_hidden': 512, + 'dim_pose': 263 if dataset_name == 'humanml' else 251, + 'dim_movement_enc_hidden': 512, + 'dim_movement_latent': 512, + 'checkpoints_dir': './checkpoints', + 'unit_length': 4, + } + + self.text_encoder, self.motion_encoder, self.movement_encoder = build_evaluators(opt) + self.opt = opt + self.device = opt['device'] + + self.text_encoder.to(opt['device']) + self.motion_encoder.to(opt['device']) + self.movement_encoder.to(opt['device']) + + self.text_encoder.eval() + self.motion_encoder.eval() + self.movement_encoder.eval() + + # Please note that the results does not following the order of inputs + def get_co_embeddings(self, word_embs, pos_ohot, cap_lens, motions, m_lens): + with torch.no_grad(): + word_embs = word_embs.detach().to(self.device).float() + pos_ohot = pos_ohot.detach().to(self.device).float() + motions = motions.detach().to(self.device).float() + + align_idx = np.argsort(m_lens.data.tolist())[::-1].copy() + motions = motions[align_idx] + m_lens = m_lens[align_idx] + + '''Movement Encoding''' + movements = self.movement_encoder(motions[..., :-4]).detach() + m_lens = m_lens // self.opt['unit_length'] + motion_embedding = self.motion_encoder(movements, m_lens) + # print(motions.shape, movements.shape, motion_embedding.shape, m_lens) + + '''Text Encoding''' + text_embedding = self.text_encoder(word_embs, pos_ohot, cap_lens) + text_embedding = text_embedding[align_idx] + return text_embedding, motion_embedding + + # Please note that the results does not following the order of inputs + def get_motion_embeddings(self, motions, m_lens): + with torch.no_grad(): + motions = motions.detach().to(self.device).float() + + align_idx = np.argsort(m_lens.data.tolist())[::-1].copy() + motions = motions[align_idx] + m_lens = m_lens[align_idx] + + '''Movement Encoding''' + movements = self.movement_encoder(motions[..., :-4]).detach() + m_lens = m_lens // self.opt['unit_length'] + motion_embedding = self.motion_encoder(movements, m_lens) + return motion_embedding \ No newline at end of file diff --git a/models/vq/__init__.py b/models/vq/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/models/vq/__pycache__/__init__.cpython-310.pyc b/models/vq/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8441d93fdbcb63fc6edcea1d4ed87992aa198ba1 Binary files /dev/null and b/models/vq/__pycache__/__init__.cpython-310.pyc differ diff --git a/models/vq/__pycache__/encdec.cpython-310.pyc b/models/vq/__pycache__/encdec.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3fad88d6ecf6000525d6d7d034fe9cd96af7fb96 Binary files /dev/null and b/models/vq/__pycache__/encdec.cpython-310.pyc differ diff --git a/models/vq/__pycache__/model.cpython-310.pyc b/models/vq/__pycache__/model.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dc1b8691b66679016ec075d8d76954586f45c6ea Binary files /dev/null and b/models/vq/__pycache__/model.cpython-310.pyc differ diff --git a/models/vq/__pycache__/quantizer.cpython-310.pyc b/models/vq/__pycache__/quantizer.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..66b839af1757c62e5ed08824888694d041c307c4 Binary files /dev/null and b/models/vq/__pycache__/quantizer.cpython-310.pyc differ diff --git a/models/vq/__pycache__/residual_vq.cpython-310.pyc b/models/vq/__pycache__/residual_vq.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..abbbb4b78407a2eaf49e7564b8414fb6320fb42c Binary files /dev/null and b/models/vq/__pycache__/residual_vq.cpython-310.pyc differ diff --git a/models/vq/__pycache__/resnet.cpython-310.pyc b/models/vq/__pycache__/resnet.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..055a5da958ef336c6550d5468d54fd813a653adc Binary files /dev/null and b/models/vq/__pycache__/resnet.cpython-310.pyc differ diff --git a/models/vq/__pycache__/vq_trainer.cpython-310.pyc b/models/vq/__pycache__/vq_trainer.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..eca7ff4b970ffe68ea098470daa351df0e2495d9 Binary files /dev/null and b/models/vq/__pycache__/vq_trainer.cpython-310.pyc differ diff --git a/models/vq/encdec.py b/models/vq/encdec.py new file mode 100644 index 0000000000000000000000000000000000000000..0ee18696f1051439ebb6d73a746ea811a5e17973 --- /dev/null +++ b/models/vq/encdec.py @@ -0,0 +1,68 @@ +import torch.nn as nn +from models.vq.resnet import Resnet1D + + +class Encoder(nn.Module): + def __init__(self, + input_emb_width=3, + output_emb_width=512, + down_t=2, + stride_t=2, + width=512, + depth=3, + dilation_growth_rate=3, + activation='relu', + norm=None): + super().__init__() + + blocks = [] + filter_t, pad_t = stride_t * 2, stride_t // 2 + blocks.append(nn.Conv1d(input_emb_width, width, 3, 1, 1)) + blocks.append(nn.ReLU()) + + for i in range(down_t): + input_dim = width + block = nn.Sequential( + nn.Conv1d(input_dim, width, filter_t, stride_t, pad_t), + Resnet1D(width, depth, dilation_growth_rate, activation=activation, norm=norm), + ) + blocks.append(block) + blocks.append(nn.Conv1d(width, output_emb_width, 3, 1, 1)) + self.model = nn.Sequential(*blocks) + + def forward(self, x): + return self.model(x) + + +class Decoder(nn.Module): + def __init__(self, + input_emb_width=3, + output_emb_width=512, + down_t=2, + stride_t=2, + width=512, + depth=3, + dilation_growth_rate=3, + activation='relu', + norm=None): + super().__init__() + blocks = [] + + blocks.append(nn.Conv1d(output_emb_width, width, 3, 1, 1)) + blocks.append(nn.ReLU()) + for i in range(down_t): + out_dim = width + block = nn.Sequential( + Resnet1D(width, depth, dilation_growth_rate, reverse_dilation=True, activation=activation, norm=norm), + nn.Upsample(scale_factor=2, mode='nearest'), + nn.Conv1d(width, out_dim, 3, 1, 1) + ) + blocks.append(block) + blocks.append(nn.Conv1d(width, width, 3, 1, 1)) + blocks.append(nn.ReLU()) + blocks.append(nn.Conv1d(width, input_emb_width, 3, 1, 1)) + self.model = nn.Sequential(*blocks) + + def forward(self, x): + x = self.model(x) + return x.permute(0, 2, 1) \ No newline at end of file diff --git a/models/vq/model.py b/models/vq/model.py new file mode 100644 index 0000000000000000000000000000000000000000..d6fbe9423380e729b569f8f02a09840d320d3cdd --- /dev/null +++ b/models/vq/model.py @@ -0,0 +1,124 @@ +import random + +import torch.nn as nn +from models.vq.encdec import Encoder, Decoder +from models.vq.residual_vq import ResidualVQ + +class RVQVAE(nn.Module): + def __init__(self, + args, + input_width=263, + nb_code=1024, + code_dim=512, + output_emb_width=512, + down_t=3, + stride_t=2, + width=512, + depth=3, + dilation_growth_rate=3, + activation='relu', + norm=None): + + super().__init__() + assert output_emb_width == code_dim + self.code_dim = code_dim + self.num_code = nb_code + # self.quant = args.quantizer + self.encoder = Encoder(input_width, output_emb_width, down_t, stride_t, width, depth, + dilation_growth_rate, activation=activation, norm=norm) + self.decoder = Decoder(input_width, output_emb_width, down_t, stride_t, width, depth, + dilation_growth_rate, activation=activation, norm=norm) + rvqvae_config = { + 'num_quantizers': args.num_quantizers, + 'shared_codebook': args.shared_codebook, + 'quantize_dropout_prob': args.quantize_dropout_prob, + 'quantize_dropout_cutoff_index': 0, + 'nb_code': nb_code, + 'code_dim':code_dim, + 'args': args, + } + self.quantizer = ResidualVQ(**rvqvae_config) + + def preprocess(self, x): + # (bs, T, Jx3) -> (bs, Jx3, T) + x = x.permute(0, 2, 1).float() + return x + + def postprocess(self, x): + # (bs, Jx3, T) -> (bs, T, Jx3) + x = x.permute(0, 2, 1) + return x + + def encode(self, x): + N, T, _ = x.shape + x_in = self.preprocess(x) + x_encoder = self.encoder(x_in) + # print(x_encoder.shape) + code_idx, all_codes = self.quantizer.quantize(x_encoder, return_latent=True) + # print(code_idx.shape) + # code_idx = code_idx.view(N, -1) + # (N, T, Q) + # print() + return code_idx, all_codes + + def forward(self, x): + x_in = self.preprocess(x) + # Encode + x_encoder = self.encoder(x_in) + + ## quantization + # x_quantized, code_idx, commit_loss, perplexity = self.quantizer(x_encoder, sample_codebook_temp=0.5, + # force_dropout_index=0) #TODO hardcode + x_quantized, code_idx, commit_loss, perplexity = self.quantizer(x_encoder, sample_codebook_temp=0.5) + + # print(code_idx[0, :, 1]) + ## decoder + x_out = self.decoder(x_quantized) + # x_out = self.postprocess(x_decoder) + return x_out, commit_loss, perplexity + + def forward_decoder(self, x): + x_d = self.quantizer.get_codes_from_indices(x) + # x_d = x_d.view(1, -1, self.code_dim).permute(0, 2, 1).contiguous() + x = x_d.sum(dim=0).permute(0, 2, 1) + + # decoder + x_out = self.decoder(x) + # x_out = self.postprocess(x_decoder) + return x_out + +class LengthEstimator(nn.Module): + def __init__(self, input_size, output_size): + super(LengthEstimator, self).__init__() + nd = 512 + self.output = nn.Sequential( + nn.Linear(input_size, nd), + nn.LayerNorm(nd), + nn.LeakyReLU(0.2, inplace=True), + + nn.Dropout(0.2), + nn.Linear(nd, nd // 2), + nn.LayerNorm(nd // 2), + nn.LeakyReLU(0.2, inplace=True), + + nn.Dropout(0.2), + nn.Linear(nd // 2, nd // 4), + nn.LayerNorm(nd // 4), + nn.LeakyReLU(0.2, inplace=True), + + nn.Linear(nd // 4, output_size) + ) + + self.output.apply(self.__init_weights) + + def __init_weights(self, module): + if isinstance(module, (nn.Linear, nn.Embedding)): + module.weight.data.normal_(mean=0.0, std=0.02) + if isinstance(module, nn.Linear) and module.bias is not None: + module.bias.data.zero_() + elif isinstance(module, nn.LayerNorm): + module.bias.data.zero_() + module.weight.data.fill_(1.0) + + def forward(self, text_emb): + return self.output(text_emb) \ No newline at end of file diff --git a/models/vq/quantizer.py b/models/vq/quantizer.py new file mode 100644 index 0000000000000000000000000000000000000000..23ebff7dad1e1342e442a17342678f240cb31123 --- /dev/null +++ b/models/vq/quantizer.py @@ -0,0 +1,180 @@ +import numpy as np +import torch +import torch.nn as nn +import torch.nn.functional as F +from einops import rearrange, repeat, reduce, pack, unpack + +# from vector_quantize_pytorch import ResidualVQ + +#Borrow from vector_quantize_pytorch + +def log(t, eps = 1e-20): + return torch.log(t.clamp(min = eps)) + +def gumbel_noise(t): + noise = torch.zeros_like(t).uniform_(0, 1) + return -log(-log(noise)) + +def gumbel_sample( + logits, + temperature = 1., + stochastic = False, + dim = -1, + training = True +): + + if training and stochastic and temperature > 0: + sampling_logits = (logits / temperature) + gumbel_noise(logits) + else: + sampling_logits = logits + + ind = sampling_logits.argmax(dim = dim) + + return ind + +class QuantizeEMAReset(nn.Module): + def __init__(self, nb_code, code_dim, args): + super(QuantizeEMAReset, self).__init__() + self.nb_code = nb_code + self.code_dim = code_dim + self.mu = args.mu ##TO_DO + self.reset_codebook() + + def reset_codebook(self): + self.init = False + self.code_sum = None + self.code_count = None + self.register_buffer('codebook', torch.zeros(self.nb_code, self.code_dim, requires_grad=False).cuda()) + + def _tile(self, x): + nb_code_x, code_dim = x.shape + if nb_code_x < self.nb_code: + n_repeats = (self.nb_code + nb_code_x - 1) // nb_code_x + std = 0.01 / np.sqrt(code_dim) + out = x.repeat(n_repeats, 1) + out = out + torch.randn_like(out) * std + else: + out = x + return out + + def init_codebook(self, x): + out = self._tile(x) + self.codebook = out[:self.nb_code] + self.code_sum = self.codebook.clone() + self.code_count = torch.ones(self.nb_code, device=self.codebook.device) + self.init = True + + def quantize(self, x, sample_codebook_temp=0.): + # N X C -> C X N + k_w = self.codebook.t() + # x: NT X C + # NT X N + distance = torch.sum(x ** 2, dim=-1, keepdim=True) - \ + 2 * torch.matmul(x, k_w) + \ + torch.sum(k_w ** 2, dim=0, keepdim=True) # (N * L, b) + + # code_idx = torch.argmin(distance, dim=-1) + + code_idx = gumbel_sample(-distance, dim = -1, temperature = sample_codebook_temp, stochastic=True, training = self.training) + + return code_idx + + def dequantize(self, code_idx): + x = F.embedding(code_idx, self.codebook) + return x + + def get_codebook_entry(self, indices): + return self.dequantize(indices).permute(0, 2, 1) + + @torch.no_grad() + def compute_perplexity(self, code_idx): + # Calculate new centres + code_onehot = torch.zeros(self.nb_code, code_idx.shape[0], device=code_idx.device) # nb_code, N * L + code_onehot.scatter_(0, code_idx.view(1, code_idx.shape[0]), 1) + + code_count = code_onehot.sum(dim=-1) # nb_code + prob = code_count / torch.sum(code_count) + perplexity = torch.exp(-torch.sum(prob * torch.log(prob + 1e-7))) + return perplexity + + @torch.no_grad() + def update_codebook(self, x, code_idx): + code_onehot = torch.zeros(self.nb_code, x.shape[0], device=x.device) # nb_code, N * L + code_onehot.scatter_(0, code_idx.view(1, x.shape[0]), 1) + + code_sum = torch.matmul(code_onehot, x) # nb_code, c + code_count = code_onehot.sum(dim=-1) # nb_code + + out = self._tile(x) + code_rand = out[:self.nb_code] + + # Update centres + self.code_sum = self.mu * self.code_sum + (1. - self.mu) * code_sum + self.code_count = self.mu * self.code_count + (1. - self.mu) * code_count + + usage = (self.code_count.view(self.nb_code, 1) >= 1.0).float() + code_update = self.code_sum.view(self.nb_code, self.code_dim) / self.code_count.view(self.nb_code, 1) + self.codebook = usage * code_update + (1-usage) * code_rand + + + prob = code_count / torch.sum(code_count) + perplexity = torch.exp(-torch.sum(prob * torch.log(prob + 1e-7))) + + return perplexity + + def preprocess(self, x): + # NCT -> NTC -> [NT, C] + # x = x.permute(0, 2, 1).contiguous() + # x = x.view(-1, x.shape[-1]) + x = rearrange(x, 'n c t -> (n t) c') + return x + + def forward(self, x, return_idx=False, temperature=0.): + N, width, T = x.shape + + x = self.preprocess(x) + if self.training and not self.init: + self.init_codebook(x) + + code_idx = self.quantize(x, temperature) + x_d = self.dequantize(code_idx) + + if self.training: + perplexity = self.update_codebook(x, code_idx) + else: + perplexity = self.compute_perplexity(code_idx) + + commit_loss = F.mse_loss(x, x_d.detach()) # It's right. the t2m-gpt paper is wrong on embed loss and commitment loss. + + # Passthrough + x_d = x + (x_d - x).detach() + + # Postprocess + x_d = x_d.view(N, T, -1).permute(0, 2, 1).contiguous() + code_idx = code_idx.view(N, T).contiguous() + # print(code_idx[0]) + if return_idx: + return x_d, code_idx, commit_loss, perplexity + return x_d, commit_loss, perplexity + +class QuantizeEMA(QuantizeEMAReset): + @torch.no_grad() + def update_codebook(self, x, code_idx): + code_onehot = torch.zeros(self.nb_code, x.shape[0], device=x.device) # nb_code, N * L + code_onehot.scatter_(0, code_idx.view(1, x.shape[0]), 1) + + code_sum = torch.matmul(code_onehot, x) # nb_code, c + code_count = code_onehot.sum(dim=-1) # nb_code + + # Update centres + self.code_sum = self.mu * self.code_sum + (1. - self.mu) * code_sum + self.code_count = self.mu * self.code_count + (1. - self.mu) * code_count + + usage = (self.code_count.view(self.nb_code, 1) >= 1.0).float() + code_update = self.code_sum.view(self.nb_code, self.code_dim) / self.code_count.view(self.nb_code, 1) + self.codebook = usage * code_update + (1-usage) * self.codebook + + prob = code_count / torch.sum(code_count) + perplexity = torch.exp(-torch.sum(prob * torch.log(prob + 1e-7))) + + return perplexity diff --git a/models/vq/residual_vq.py b/models/vq/residual_vq.py new file mode 100644 index 0000000000000000000000000000000000000000..6478260124d174ad35f539a612859ce749983fb8 --- /dev/null +++ b/models/vq/residual_vq.py @@ -0,0 +1,194 @@ +import random +from math import ceil +from functools import partial +from itertools import zip_longest +from random import randrange + +import torch +from torch import nn +import torch.nn.functional as F +# from vector_quantize_pytorch.vector_quantize_pytorch import VectorQuantize +from models.vq.quantizer import QuantizeEMAReset, QuantizeEMA + +from einops import rearrange, repeat, pack, unpack + +# helper functions + +def exists(val): + return val is not None + +def default(val, d): + return val if exists(val) else d + +def round_up_multiple(num, mult): + return ceil(num / mult) * mult + +# main class + +class ResidualVQ(nn.Module): + """ Follows Algorithm 1. in https://arxiv.org/pdf/2107.03312.pdf """ + def __init__( + self, + num_quantizers, + shared_codebook=False, + quantize_dropout_prob=0.5, + quantize_dropout_cutoff_index=0, + **kwargs + ): + super().__init__() + + self.num_quantizers = num_quantizers + + # self.layers = nn.ModuleList([VectorQuantize(accept_image_fmap = accept_image_fmap, **kwargs) for _ in range(num_quantizers)]) + if shared_codebook: + layer = QuantizeEMAReset(**kwargs) + self.layers = nn.ModuleList([layer for _ in range(num_quantizers)]) + else: + self.layers = nn.ModuleList([QuantizeEMAReset(**kwargs) for _ in range(num_quantizers)]) + # self.layers = nn.ModuleList([QuantizeEMA(**kwargs) for _ in range(num_quantizers)]) + + # self.quantize_dropout = quantize_dropout and num_quantizers > 1 + + assert quantize_dropout_cutoff_index >= 0 and quantize_dropout_prob >= 0 + + self.quantize_dropout_cutoff_index = quantize_dropout_cutoff_index + self.quantize_dropout_prob = quantize_dropout_prob + + + @property + def codebooks(self): + codebooks = [layer.codebook for layer in self.layers] + codebooks = torch.stack(codebooks, dim = 0) + return codebooks # 'q c d' + + def get_codes_from_indices(self, indices): #indices shape 'b n q' # dequantize + + batch, quantize_dim = indices.shape[0], indices.shape[-1] + + # because of quantize dropout, one can pass in indices that are coarse + # and the network should be able to reconstruct + + if quantize_dim < self.num_quantizers: + indices = F.pad(indices, (0, self.num_quantizers - quantize_dim), value = -1) + + # get ready for gathering + + codebooks = repeat(self.codebooks, 'q c d -> q b c d', b = batch) + gather_indices = repeat(indices, 'b n q -> q b n d', d = codebooks.shape[-1]) + + # take care of quantizer dropout + + mask = gather_indices == -1. + gather_indices = gather_indices.masked_fill(mask, 0) # have it fetch a dummy code to be masked out later + + # print(gather_indices.max(), gather_indices.min()) + all_codes = codebooks.gather(2, gather_indices) # gather all codes + + # mask out any codes that were dropout-ed + + all_codes = all_codes.masked_fill(mask, 0.) + + return all_codes # 'q b n d' + + def get_codebook_entry(self, indices): #indices shape 'b n q' + all_codes = self.get_codes_from_indices(indices) #'q b n d' + latent = torch.sum(all_codes, dim=0) #'b n d' + latent = latent.permute(0, 2, 1) + return latent + + def forward(self, x, return_all_codes = False, sample_codebook_temp = None, force_dropout_index=-1): + # debug check + # print(self.codebooks[:,0,0].detach().cpu().numpy()) + num_quant, quant_dropout_prob, device = self.num_quantizers, self.quantize_dropout_prob, x.device + + quantized_out = 0. + residual = x + + all_losses = [] + all_indices = [] + all_perplexity = [] + + + should_quantize_dropout = self.training and random.random() < self.quantize_dropout_prob + + start_drop_quantize_index = num_quant + # To ensure the first-k layers learn things as much as possible, we randomly dropout the last q - k layers + if should_quantize_dropout: + start_drop_quantize_index = randrange(self.quantize_dropout_cutoff_index, num_quant) # keep quant layers <= quantize_dropout_cutoff_index, TODO vary in batch + null_indices_shape = [x.shape[0], x.shape[-1]] # 'b*n' + null_indices = torch.full(null_indices_shape, -1., device = device, dtype = torch.long) + # null_loss = 0. + + if force_dropout_index >= 0: + should_quantize_dropout = True + start_drop_quantize_index = force_dropout_index + null_indices_shape = [x.shape[0], x.shape[-1]] # 'b*n' + null_indices = torch.full(null_indices_shape, -1., device=device, dtype=torch.long) + + # print(force_dropout_index) + # go through the layers + + for quantizer_index, layer in enumerate(self.layers): + + if should_quantize_dropout and quantizer_index > start_drop_quantize_index: + all_indices.append(null_indices) + # all_losses.append(null_loss) + continue + + # layer_indices = None + # if return_loss: + # layer_indices = indices[..., quantizer_index] #gt indices + + # quantized, *rest = layer(residual, indices = layer_indices, sample_codebook_temp = sample_codebook_temp) #single quantizer TODO + quantized, *rest = layer(residual, return_idx=True, temperature=sample_codebook_temp) #single quantizer + + # print(quantized.shape, residual.shape) + residual -= quantized.detach() + quantized_out += quantized + + embed_indices, loss, perplexity = rest + all_indices.append(embed_indices) + all_losses.append(loss) + all_perplexity.append(perplexity) + + + # stack all losses and indices + all_indices = torch.stack(all_indices, dim=-1) + all_losses = sum(all_losses)/len(all_losses) + all_perplexity = sum(all_perplexity)/len(all_perplexity) + + ret = (quantized_out, all_indices, all_losses, all_perplexity) + + if return_all_codes: + # whether to return all codes from all codebooks across layers + all_codes = self.get_codes_from_indices(all_indices) + + # will return all codes in shape (quantizer, batch, sequence length, codebook dimension) + ret = (*ret, all_codes) + + return ret + + def quantize(self, x, return_latent=False): + all_indices = [] + quantized_out = 0. + residual = x + all_codes = [] + for quantizer_index, layer in enumerate(self.layers): + + quantized, *rest = layer(residual, return_idx=True) #single quantizer + + residual = residual - quantized.detach() + quantized_out = quantized_out + quantized + + embed_indices, loss, perplexity = rest + all_indices.append(embed_indices) + # print(quantizer_index, embed_indices[0]) + # print(quantizer_index, quantized[0]) + # break + all_codes.append(quantized) + + code_idx = torch.stack(all_indices, dim=-1) + all_codes = torch.stack(all_codes, dim=0) + if return_latent: + return code_idx, all_codes + return code_idx \ No newline at end of file diff --git a/models/vq/resnet.py b/models/vq/resnet.py new file mode 100644 index 0000000000000000000000000000000000000000..88d230d31055a6e66b0c9b75b29fff8935b8a1fd --- /dev/null +++ b/models/vq/resnet.py @@ -0,0 +1,84 @@ +import torch.nn as nn +import torch + +class nonlinearity(nn.Module): + def __init(self): + super().__init__() + + def forward(self, x): + return x * torch.sigmoid(x) + + +class ResConv1DBlock(nn.Module): + def __init__(self, n_in, n_state, dilation=1, activation='silu', norm=None, dropout=0.2): + super(ResConv1DBlock, self).__init__() + + padding = dilation + self.norm = norm + + if norm == "LN": + self.norm1 = nn.LayerNorm(n_in) + self.norm2 = nn.LayerNorm(n_in) + elif norm == "GN": + self.norm1 = nn.GroupNorm(num_groups=32, num_channels=n_in, eps=1e-6, affine=True) + self.norm2 = nn.GroupNorm(num_groups=32, num_channels=n_in, eps=1e-6, affine=True) + elif norm == "BN": + self.norm1 = nn.BatchNorm1d(num_features=n_in, eps=1e-6, affine=True) + self.norm2 = nn.BatchNorm1d(num_features=n_in, eps=1e-6, affine=True) + else: + self.norm1 = nn.Identity() + self.norm2 = nn.Identity() + + if activation == "relu": + self.activation1 = nn.ReLU() + self.activation2 = nn.ReLU() + + elif activation == "silu": + self.activation1 = nonlinearity() + self.activation2 = nonlinearity() + + elif activation == "gelu": + self.activation1 = nn.GELU() + self.activation2 = nn.GELU() + + self.conv1 = nn.Conv1d(n_in, n_state, 3, 1, padding, dilation) + self.conv2 = nn.Conv1d(n_state, n_in, 1, 1, 0, ) + self.dropout = nn.Dropout(dropout) + + def forward(self, x): + x_orig = x + if self.norm == "LN": + x = self.norm1(x.transpose(-2, -1)) + x = self.activation1(x.transpose(-2, -1)) + else: + x = self.norm1(x) + x = self.activation1(x) + + x = self.conv1(x) + + if self.norm == "LN": + x = self.norm2(x.transpose(-2, -1)) + x = self.activation2(x.transpose(-2, -1)) + else: + x = self.norm2(x) + x = self.activation2(x) + + x = self.conv2(x) + x = self.dropout(x) + x = x + x_orig + return x + + +class Resnet1D(nn.Module): + def __init__(self, n_in, n_depth, dilation_growth_rate=1, reverse_dilation=True, activation='relu', norm=None): + super().__init__() + + blocks = [ResConv1DBlock(n_in, n_in, dilation=dilation_growth_rate ** depth, activation=activation, norm=norm) + for depth in range(n_depth)] + if reverse_dilation: + blocks = blocks[::-1] + + self.model = nn.Sequential(*blocks) + + def forward(self, x): + return self.model(x) \ No newline at end of file diff --git a/models/vq/vq_trainer.py b/models/vq/vq_trainer.py new file mode 100644 index 0000000000000000000000000000000000000000..83761ff9b20d16a025ae1eda40e5a38c171757e3 --- /dev/null +++ b/models/vq/vq_trainer.py @@ -0,0 +1,359 @@ +import torch +from torch.utils.data import DataLoader +from torch.nn.utils import clip_grad_norm_ +from torch.utils.tensorboard import SummaryWriter +from os.path import join as pjoin +import torch.nn.functional as F + +import torch.optim as optim + +import time +import numpy as np +from collections import OrderedDict, defaultdict +from utils.eval_t2m import evaluation_vqvae, evaluation_res_conv +from utils.utils import print_current_loss + +import os +import sys + +def def_value(): + return 0.0 + + +class RVQTokenizerTrainer: + def __init__(self, args, vq_model): + self.opt = args + self.vq_model = vq_model + self.device = args.device + + if args.is_train: + self.logger = SummaryWriter(args.log_dir) + if args.recons_loss == 'l1': + self.l1_criterion = torch.nn.L1Loss() + elif args.recons_loss == 'l1_smooth': + self.l1_criterion = torch.nn.SmoothL1Loss() + + # self.critic = CriticWrapper(self.opt.dataset_name, self.opt.device) + + def forward(self, batch_data): + motions = batch_data.detach().to(self.device).float() + pred_motion, loss_commit, perplexity = self.vq_model(motions) + + self.motions = motions + self.pred_motion = pred_motion + + loss_rec = self.l1_criterion(pred_motion, motions) + pred_local_pos = pred_motion[..., 4 : (self.opt.joints_num - 1) * 3 + 4] + local_pos = motions[..., 4 : (self.opt.joints_num - 1) * 3 + 4] + loss_explicit = self.l1_criterion(pred_local_pos, local_pos) + + loss = loss_rec + self.opt.loss_vel * loss_explicit + self.opt.commit * loss_commit + + # return loss, loss_rec, loss_vel, loss_commit, perplexity + # return loss, loss_rec, loss_percept, loss_commit, perplexity + return loss, loss_rec, loss_explicit, loss_commit, perplexity + + + # @staticmethod + def update_lr_warm_up(self, nb_iter, warm_up_iter, lr): + + current_lr = lr * (nb_iter + 1) / (warm_up_iter + 1) + for param_group in self.opt_vq_model.param_groups: + param_group["lr"] = current_lr + + return current_lr + + def save(self, file_name, ep, total_it): + state = { + "vq_model": self.vq_model.state_dict(), + "opt_vq_model": self.opt_vq_model.state_dict(), + "scheduler": self.scheduler.state_dict(), + 'ep': ep, + 'total_it': total_it, + } + torch.save(state, file_name) + + def resume(self, model_dir): + checkpoint = torch.load(model_dir, map_location=self.device) + self.vq_model.load_state_dict(checkpoint['vq_model']) + self.opt_vq_model.load_state_dict(checkpoint['opt_vq_model']) + self.scheduler.load_state_dict(checkpoint['scheduler']) + return checkpoint['ep'], checkpoint['total_it'] + + def train(self, train_loader, val_loader, eval_val_loader, eval_wrapper, plot_eval=None): + self.vq_model.to(self.device) + + self.opt_vq_model = optim.AdamW(self.vq_model.parameters(), lr=self.opt.lr, betas=(0.9, 0.99), weight_decay=self.opt.weight_decay) + self.scheduler = torch.optim.lr_scheduler.MultiStepLR(self.opt_vq_model, milestones=self.opt.milestones, gamma=self.opt.gamma) + + epoch = 0 + it = 0 + if self.opt.is_continue: + model_dir = pjoin(self.opt.model_dir, 'latest.tar') + epoch, it = self.resume(model_dir) + print("Load model epoch:%d iterations:%d"%(epoch, it)) + + start_time = time.time() + total_iters = self.opt.max_epoch * len(train_loader) + print(f'Total Epochs: {self.opt.max_epoch}, Total Iters: {total_iters}') + print('Iters Per Epoch, Training: %04d, Validation: %03d' % (len(train_loader), len(eval_val_loader))) + # val_loss = 0 + # min_val_loss = np.inf + # min_val_epoch = epoch + current_lr = self.opt.lr + logs = defaultdict(def_value, OrderedDict()) + + # sys.exit() + best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer = evaluation_vqvae( + self.opt.model_dir, eval_val_loader, self.vq_model, self.logger, epoch, best_fid=1000, + best_div=100, best_top1=0, + best_top2=0, best_top3=0, best_matching=100, + eval_wrapper=eval_wrapper, save=False) + + while epoch < self.opt.max_epoch: + self.vq_model.train() + for i, batch_data in enumerate(train_loader): + it += 1 + if it < self.opt.warm_up_iter: + current_lr = self.update_lr_warm_up(it, self.opt.warm_up_iter, self.opt.lr) + loss, loss_rec, loss_vel, loss_commit, perplexity = self.forward(batch_data) + self.opt_vq_model.zero_grad() + loss.backward() + self.opt_vq_model.step() + + if it >= self.opt.warm_up_iter: + self.scheduler.step() + + logs['loss'] += loss.item() + logs['loss_rec'] += loss_rec.item() + # Note it not necessarily velocity, too lazy to change the name now + logs['loss_vel'] += loss_vel.item() + logs['loss_commit'] += loss_commit.item() + logs['perplexity'] += perplexity.item() + logs['lr'] += self.opt_vq_model.param_groups[0]['lr'] + + if it % self.opt.log_every == 0: + mean_loss = OrderedDict() + # self.logger.add_scalar('val_loss', val_loss, it) + # self.l + for tag, value in logs.items(): + self.logger.add_scalar('Train/%s'%tag, value / self.opt.log_every, it) + mean_loss[tag] = value / self.opt.log_every + logs = defaultdict(def_value, OrderedDict()) + print_current_loss(start_time, it, total_iters, mean_loss, epoch=epoch, inner_iter=i) + + if it % self.opt.save_latest == 0: + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + epoch += 1 + # if epoch % self.opt.save_every_e == 0: + # self.save(pjoin(self.opt.model_dir, 'E%04d.tar' % (epoch)), epoch, total_it=it) + + print('Validation time:') + self.vq_model.eval() + val_loss_rec = [] + val_loss_vel = [] + val_loss_commit = [] + val_loss = [] + val_perpexity = [] + with torch.no_grad(): + for i, batch_data in enumerate(val_loader): + loss, loss_rec, loss_vel, loss_commit, perplexity = self.forward(batch_data) + # val_loss_rec += self.l1_criterion(self.recon_motions, self.motions).item() + # val_loss_emb += self.embedding_loss.item() + val_loss.append(loss.item()) + val_loss_rec.append(loss_rec.item()) + val_loss_vel.append(loss_vel.item()) + val_loss_commit.append(loss_commit.item()) + val_perpexity.append(perplexity.item()) + + # val_loss = val_loss_rec / (len(val_dataloader) + 1) + # val_loss = val_loss / (len(val_dataloader) + 1) + # val_loss_rec = val_loss_rec / (len(val_dataloader) + 1) + # val_loss_emb = val_loss_emb / (len(val_dataloader) + 1) + self.logger.add_scalar('Val/loss', sum(val_loss) / len(val_loss), epoch) + self.logger.add_scalar('Val/loss_rec', sum(val_loss_rec) / len(val_loss_rec), epoch) + self.logger.add_scalar('Val/loss_vel', sum(val_loss_vel) / len(val_loss_vel), epoch) + self.logger.add_scalar('Val/loss_commit', sum(val_loss_commit) / len(val_loss), epoch) + self.logger.add_scalar('Val/loss_perplexity', sum(val_perpexity) / len(val_loss_rec), epoch) + + print('Validation Loss: %.5f Reconstruction: %.5f, Velocity: %.5f, Commit: %.5f' % + (sum(val_loss)/len(val_loss), sum(val_loss_rec)/len(val_loss), + sum(val_loss_vel)/len(val_loss), sum(val_loss_commit)/len(val_loss))) + + # if sum(val_loss) / len(val_loss) < min_val_loss: + # min_val_loss = sum(val_loss) / len(val_loss) + # # if sum(val_loss_vel) / len(val_loss_vel) < min_val_loss: + # # min_val_loss = sum(val_loss_vel) / len(val_loss_vel) + # min_val_epoch = epoch + # self.save(pjoin(self.opt.model_dir, 'finest.tar'), epoch, it) + # print('Best Validation Model So Far!~') + + best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer = evaluation_vqvae( + self.opt.model_dir, eval_val_loader, self.vq_model, self.logger, epoch, best_fid=best_fid, + best_div=best_div, best_top1=best_top1, + best_top2=best_top2, best_top3=best_top3, best_matching=best_matching, eval_wrapper=eval_wrapper) + + + if epoch % self.opt.eval_every_e == 0: + data = torch.cat([self.motions[:4], self.pred_motion[:4]], dim=0).detach().cpu().numpy() + # np.save(pjoin(self.opt.eval_dir, 'E%04d.npy' % (epoch)), data) + save_dir = pjoin(self.opt.eval_dir, 'E%04d' % (epoch)) + os.makedirs(save_dir, exist_ok=True) + plot_eval(data, save_dir) + # if plot_eval is not None: + # save_dir = pjoin(self.opt.eval_dir, 'E%04d' % (epoch)) + # os.makedirs(save_dir, exist_ok=True) + # plot_eval(data, save_dir) + + # if epoch - min_val_epoch >= self.opt.early_stop_e: + # print('Early Stopping!~') + + +class LengthEstTrainer(object): + + def __init__(self, args, estimator, text_encoder, encode_fnc): + self.opt = args + self.estimator = estimator + self.text_encoder = text_encoder + self.encode_fnc = encode_fnc + self.device = args.device + + if args.is_train: + # self.motion_dis + self.logger = SummaryWriter(args.log_dir) + self.mul_cls_criterion = torch.nn.CrossEntropyLoss() + + def resume(self, model_dir): + checkpoints = torch.load(model_dir, map_location=self.device) + self.estimator.load_state_dict(checkpoints['estimator']) + # self.opt_estimator.load_state_dict(checkpoints['opt_estimator']) + return checkpoints['epoch'], checkpoints['iter'] + + def save(self, model_dir, epoch, niter): + state = { + 'estimator': self.estimator.state_dict(), + # 'opt_estimator': self.opt_estimator.state_dict(), + 'epoch': epoch, + 'niter': niter, + } + torch.save(state, model_dir) + + @staticmethod + def zero_grad(opt_list): + for opt in opt_list: + opt.zero_grad() + + @staticmethod + def clip_norm(network_list): + for network in network_list: + clip_grad_norm_(network.parameters(), 0.5) + + @staticmethod + def step(opt_list): + for opt in opt_list: + opt.step() + + def train(self, train_dataloader, val_dataloader): + self.estimator.to(self.device) + self.text_encoder.to(self.device) + + self.opt_estimator = optim.Adam(self.estimator.parameters(), lr=self.opt.lr) + + epoch = 0 + it = 0 + + if self.opt.is_continue: + model_dir = pjoin(self.opt.model_dir, 'latest.tar') + epoch, it = self.resume(model_dir) + + start_time = time.time() + total_iters = self.opt.max_epoch * len(train_dataloader) + print('Iters Per Epoch, Training: %04d, Validation: %03d' % (len(train_dataloader), len(val_dataloader))) + val_loss = 0 + min_val_loss = np.inf + logs = defaultdict(float) + while epoch < self.opt.max_epoch: + # time0 = time.time() + for i, batch_data in enumerate(train_dataloader): + self.estimator.train() + + conds, _, m_lens = batch_data + # word_emb = word_emb.detach().to(self.device).float() + # pos_ohot = pos_ohot.detach().to(self.device).float() + # m_lens = m_lens.to(self.device).long() + text_embs = self.encode_fnc(self.text_encoder, conds, self.opt.device).detach() + # print(text_embs.shape, text_embs.device) + + pred_dis = self.estimator(text_embs) + + self.zero_grad([self.opt_estimator]) + + gt_labels = m_lens // self.opt.unit_length + gt_labels = gt_labels.long().to(self.device) + # print(gt_labels.shape, pred_dis.shape) + # print(gt_labels.max(), gt_labels.min()) + # print(pred_dis) + acc = (gt_labels == pred_dis.argmax(dim=-1)).sum() / len(gt_labels) + loss = self.mul_cls_criterion(pred_dis, gt_labels) + + loss.backward() + + self.clip_norm([self.estimator]) + self.step([self.opt_estimator]) + + logs['loss'] += loss.item() + logs['acc'] += acc.item() + + it += 1 + if it % self.opt.log_every == 0: + mean_loss = OrderedDict({'val_loss': val_loss}) + # self.logger.add_scalar('Val/loss', val_loss, it) + + for tag, value in logs.items(): + self.logger.add_scalar("Train/%s"%tag, value / self.opt.log_every, it) + mean_loss[tag] = value / self.opt.log_every + logs = defaultdict(float) + print_current_loss(start_time, it, total_iters, mean_loss, epoch=epoch, inner_iter=i) + + if it % self.opt.save_latest == 0: + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + self.save(pjoin(self.opt.model_dir, 'latest.tar'), epoch, it) + + epoch += 1 + + print('Validation time:') + + val_loss = 0 + val_acc = 0 + # self.estimator.eval() + with torch.no_grad(): + for i, batch_data in enumerate(val_dataloader): + self.estimator.eval() + + conds, _, m_lens = batch_data + # word_emb = word_emb.detach().to(self.device).float() + # pos_ohot = pos_ohot.detach().to(self.device).float() + # m_lens = m_lens.to(self.device).long() + text_embs = self.encode_fnc(self.text_encoder, conds, self.opt.device) + pred_dis = self.estimator(text_embs) + + gt_labels = m_lens // self.opt.unit_length + gt_labels = gt_labels.long().to(self.device) + loss = self.mul_cls_criterion(pred_dis, gt_labels) + acc = (gt_labels == pred_dis.argmax(dim=-1)).sum() / len(gt_labels) + + val_loss += loss.item() + val_acc += acc.item() + + + val_loss = val_loss / len(val_dataloader) + val_acc = val_acc / len(val_dataloader) + print('Validation Loss: %.5f Validation Acc: %.5f' % (val_loss, val_acc)) + + if val_loss < min_val_loss: + self.save(pjoin(self.opt.model_dir, 'finest.tar'), epoch, it) + min_val_loss = val_loss diff --git a/motion_loaders/__init__.py b/motion_loaders/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/motion_loaders/__pycache__/__init__.cpython-310.pyc b/motion_loaders/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..37b0c733f91c56162405502d7a3e17b8c577491a Binary files /dev/null and b/motion_loaders/__pycache__/__init__.cpython-310.pyc differ diff --git a/motion_loaders/__pycache__/dataset_motion_loader.cpython-310.pyc b/motion_loaders/__pycache__/dataset_motion_loader.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0a328d0954ffe5303aab5da7296c24eb3be30c01 Binary files /dev/null and b/motion_loaders/__pycache__/dataset_motion_loader.cpython-310.pyc differ diff --git a/motion_loaders/dataset_motion_loader.py b/motion_loaders/dataset_motion_loader.py new file mode 100644 index 0000000000000000000000000000000000000000..aec8320a39566a2bcc21931d1ada04aad32e9dc2 --- /dev/null +++ b/motion_loaders/dataset_motion_loader.py @@ -0,0 +1,27 @@ +from data.t2m_dataset import Text2MotionDatasetEval, collate_fn # TODO +from utils.word_vectorizer import WordVectorizer +import numpy as np +from os.path import join as pjoin +from torch.utils.data import DataLoader +from utils.get_opt import get_opt + +def get_dataset_motion_loader(opt_path, batch_size, fname, device): + opt = get_opt(opt_path, device) + + # Configurations of T2M dataset and KIT dataset is almost the same + if opt.dataset_name == 't2m' or opt.dataset_name == 'kit': + print('Loading dataset %s ...' % opt.dataset_name) + + mean = np.load(pjoin(opt.meta_dir, 'mean.npy')) + std = np.load(pjoin(opt.meta_dir, 'std.npy')) + + w_vectorizer = WordVectorizer('./glove', 'our_vab') + split_file = pjoin(opt.data_root, '%s.txt'%fname) + dataset = Text2MotionDatasetEval(opt, mean, std, split_file, w_vectorizer) + dataloader = DataLoader(dataset, batch_size=batch_size, num_workers=4, drop_last=True, + collate_fn=collate_fn, shuffle=True) + else: + raise KeyError('Dataset not Recognized !!') + + print('Ground Truth Dataset Loading Completed!!!') + return dataloader, dataset \ No newline at end of file diff --git a/options/__init__.py b/options/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/options/__pycache__/__init__.cpython-310.pyc b/options/__pycache__/__init__.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..958cef0a410c527842ef8daca7ec61d62120ccac Binary files /dev/null and b/options/__pycache__/__init__.cpython-310.pyc differ diff --git a/options/__pycache__/vq_option.cpython-310.pyc b/options/__pycache__/vq_option.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..09e3a5aa82cb503bc4f0d8d8015f61043959b3e4 Binary files /dev/null and b/options/__pycache__/vq_option.cpython-310.pyc differ diff --git a/options/base_option.py b/options/base_option.py new file mode 100644 index 0000000000000000000000000000000000000000..4eb94fe30d9fa3f226a54431697e4d20dd57e118 --- /dev/null +++ b/options/base_option.py @@ -0,0 +1,61 @@ +import argparse +import os +import torch + +class BaseOptions(): + def __init__(self): + self.parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) + self.initialized = False + + def initialize(self): + self.parser.add_argument('--name', type=str, default="t2m_nlayer8_nhead6_ld384_ff1024_cdp0.1_rvq6ns", help='Name of this trial') + + self.parser.add_argument('--vq_name', type=str, default="rvq_nq1_dc512_nc512", help='Name of the rvq model.') + + self.parser.add_argument("--gpu_id", type=int, default=0, help='GPU id') + self.parser.add_argument('--dataset_name', type=str, default='t2m', help='Dataset Name, {t2m} for humanml3d, {kit} for kit-ml') + self.parser.add_argument('--checkpoints_dir', type=str, default='./checkpoints', help='models are saved here.') + + self.parser.add_argument('--latent_dim', type=int, default=384, help='Dimension of transformer latent.') + self.parser.add_argument('--n_heads', type=int, default=6, help='Number of heads.') + self.parser.add_argument('--n_layers', type=int, default=8, help='Number of attention layers.') + self.parser.add_argument('--ff_size', type=int, default=1024, help='FF_Size') + self.parser.add_argument('--dropout', type=float, default=0.2, help='Dropout ratio in transformer') + + self.parser.add_argument("--max_motion_length", type=int, default=196, help="Max length of motion") + self.parser.add_argument("--unit_length", type=int, default=4, help="Downscale ratio of VQ") + + self.parser.add_argument('--force_mask', action="store_true", help='True: mask out conditions') + + self.initialized = True + + def parse(self): + if not self.initialized: + self.initialize() + + self.opt = self.parser.parse_args() + + self.opt.is_train = self.is_train + + if self.opt.gpu_id != -1: + # self.opt.gpu_id = int(self.opt.gpu_id) + torch.cuda.set_device(self.opt.gpu_id) + + args = vars(self.opt) + + print('------------ Options -------------') + for k, v in sorted(args.items()): + print('%s: %s' % (str(k), str(v))) + print('-------------- End ----------------') + if self.is_train: + # save to the disk + expr_dir = os.path.join(self.opt.checkpoints_dir, self.opt.dataset_name, self.opt.name) + if not os.path.exists(expr_dir): + os.makedirs(expr_dir) + file_name = os.path.join(expr_dir, 'opt.txt') + with open(file_name, 'wt') as opt_file: + opt_file.write('------------ Options -------------\n') + for k, v in sorted(args.items()): + opt_file.write('%s: %s\n' % (str(k), str(v))) + opt_file.write('-------------- End ----------------\n') + return self.opt \ No newline at end of file diff --git a/options/eval_option.py b/options/eval_option.py new file mode 100644 index 0000000000000000000000000000000000000000..2ae26828319a2ad0b7eb71b709556ca5485a421c --- /dev/null +++ b/options/eval_option.py @@ -0,0 +1,38 @@ +from options.base_option import BaseOptions + +class EvalT2MOptions(BaseOptions): + def initialize(self): + BaseOptions.initialize(self) + self.parser.add_argument('--which_epoch', type=str, default="latest", help='Checkpoint you want to use, {latest, net_best_fid, etc}') + self.parser.add_argument('--batch_size', type=int, default=32, help='Batch size') + + self.parser.add_argument('--ext', type=str, default='text2motion', help='Extension of the result file or folder') + self.parser.add_argument("--num_batch", default=2, type=int, + help="Number of batch for generation") + self.parser.add_argument("--repeat_times", default=1, type=int, + help="Number of repetitions, per sample text prompt") + self.parser.add_argument("--cond_scale", default=4, type=float, + help="For classifier-free sampling - specifies the s parameter, as defined in the paper.") + self.parser.add_argument("--temperature", default=1., type=float, + help="Sampling Temperature.") + self.parser.add_argument("--topkr", default=0.9, type=float, + help="Filter out percentil low prop entries.") + self.parser.add_argument("--time_steps", default=18, type=int, + help="Mask Generate steps.") + self.parser.add_argument("--seed", default=10107, type=int) + + self.parser.add_argument('--gumbel_sample', action="store_true", help='True: gumbel sampling, False: categorical sampling.') + self.parser.add_argument('--use_res_model', action="store_true", help='Whether to use residual transformer.') + # self.parser.add_argument('--est_length', action="store_true", help='Training iterations') + + self.parser.add_argument('--res_name', type=str, default='tres_nlayer8_ld384_ff1024_rvq6ns_cdp0.2_sw', help='Model name of residual transformer') + self.parser.add_argument('--text_path', type=str, default="", help='Text prompt file') + + + self.parser.add_argument('-msec', '--mask_edit_section', nargs='*', type=str, help='Indicate sections for editing, use comma to separate the start and end of a section' + 'type int will specify the token frame, type float will specify the ratio of seq_len') + self.parser.add_argument('--text_prompt', default='', type=str, help="A text prompt to be generated. If empty, will take text prompts from dataset.") + self.parser.add_argument('--source_motion', default='example_data/000612.npy', type=str, help="Source motion path for editing. (new_joint_vecs format .npy file)") + self.parser.add_argument("--motion_length", default=0, type=int, + help="Motion length for generation, only applicable with single text prompt.") + self.is_train = False \ No newline at end of file diff --git a/options/hgdemo_option.py b/options/hgdemo_option.py new file mode 100644 index 0000000000000000000000000000000000000000..2ae26828319a2ad0b7eb71b709556ca5485a421c --- /dev/null +++ b/options/hgdemo_option.py @@ -0,0 +1,38 @@ +from options.base_option import BaseOptions + +class EvalT2MOptions(BaseOptions): + def initialize(self): + BaseOptions.initialize(self) + self.parser.add_argument('--which_epoch', type=str, default="latest", help='Checkpoint you want to use, {latest, net_best_fid, etc}') + self.parser.add_argument('--batch_size', type=int, default=32, help='Batch size') + + self.parser.add_argument('--ext', type=str, default='text2motion', help='Extension of the result file or folder') + self.parser.add_argument("--num_batch", default=2, type=int, + help="Number of batch for generation") + self.parser.add_argument("--repeat_times", default=1, type=int, + help="Number of repetitions, per sample text prompt") + self.parser.add_argument("--cond_scale", default=4, type=float, + help="For classifier-free sampling - specifies the s parameter, as defined in the paper.") + self.parser.add_argument("--temperature", default=1., type=float, + help="Sampling Temperature.") + self.parser.add_argument("--topkr", default=0.9, type=float, + help="Filter out percentil low prop entries.") + self.parser.add_argument("--time_steps", default=18, type=int, + help="Mask Generate steps.") + self.parser.add_argument("--seed", default=10107, type=int) + + self.parser.add_argument('--gumbel_sample', action="store_true", help='True: gumbel sampling, False: categorical sampling.') + self.parser.add_argument('--use_res_model', action="store_true", help='Whether to use residual transformer.') + # self.parser.add_argument('--est_length', action="store_true", help='Training iterations') + + self.parser.add_argument('--res_name', type=str, default='tres_nlayer8_ld384_ff1024_rvq6ns_cdp0.2_sw', help='Model name of residual transformer') + self.parser.add_argument('--text_path', type=str, default="", help='Text prompt file') + + + self.parser.add_argument('-msec', '--mask_edit_section', nargs='*', type=str, help='Indicate sections for editing, use comma to separate the start and end of a section' + 'type int will specify the token frame, type float will specify the ratio of seq_len') + self.parser.add_argument('--text_prompt', default='', type=str, help="A text prompt to be generated. If empty, will take text prompts from dataset.") + self.parser.add_argument('--source_motion', default='example_data/000612.npy', type=str, help="Source motion path for editing. (new_joint_vecs format .npy file)") + self.parser.add_argument("--motion_length", default=0, type=int, + help="Motion length for generation, only applicable with single text prompt.") + self.is_train = False \ No newline at end of file diff --git a/options/train_option.py b/options/train_option.py new file mode 100644 index 0000000000000000000000000000000000000000..875474d657382752462349aed22e2ec2f3619e0d --- /dev/null +++ b/options/train_option.py @@ -0,0 +1,64 @@ +from options.base_option import BaseOptions +import argparse + +class TrainT2MOptions(BaseOptions): + def initialize(self): + BaseOptions.initialize(self) + self.parser.add_argument('--batch_size', type=int, default=64, help='Batch size') + self.parser.add_argument('--max_epoch', type=int, default=500, help='Maximum number of epoch for training') + # self.parser.add_argument('--max_iters', type=int, default=150_000, help='Training iterations') + + '''LR scheduler''' + self.parser.add_argument('--lr', type=float, default=2e-4, help='Learning rate') + self.parser.add_argument('--gamma', type=float, default=0.1, help='Learning rate schedule factor') + self.parser.add_argument('--milestones', default=[50_000], nargs="+", type=int, + help="learning rate schedule (iterations)") + self.parser.add_argument('--warm_up_iter', default=2000, type=int, help='number of total iterations for warmup') + + '''Condition''' + self.parser.add_argument('--cond_drop_prob', type=float, default=0.1, help='Drop ratio of condition, for classifier-free guidance') + self.parser.add_argument("--seed", default=3407, type=int, help="Seed") + + self.parser.add_argument('--is_continue', action="store_true", help='Is this trial continuing previous state?') + self.parser.add_argument('--gumbel_sample', action="store_true", help='Strategy for token sampling, True: Gumbel sampling, False: Categorical sampling') + self.parser.add_argument('--share_weight', action="store_true", help='Whether to share weight for projection/embedding, for residual transformer.') + + self.parser.add_argument('--log_every', type=int, default=50, help='Frequency of printing training progress, (iteration)') + # self.parser.add_argument('--save_every_e', type=int, default=100, help='Frequency of printing training progress') + self.parser.add_argument('--eval_every_e', type=int, default=10, help='Frequency of animating eval results, (epoch)') + self.parser.add_argument('--save_latest', type=int, default=500, help='Frequency of saving checkpoint, (iteration)') + + + self.is_train = True + + +class TrainLenEstOptions(): + def __init__(self): + self.parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) + self.parser.add_argument('--name', type=str, default="test", help='Name of this trial') + self.parser.add_argument("--gpu_id", type=int, default=-1, help='GPU id') + + self.parser.add_argument('--dataset_name', type=str, default='t2m', help='Dataset Name') + self.parser.add_argument('--checkpoints_dir', type=str, default='./checkpoints', help='models are saved here') + + self.parser.add_argument('--batch_size', type=int, default=64, help='Batch size') + + self.parser.add_argument("--unit_length", type=int, default=4, help="Length of motion") + self.parser.add_argument("--max_text_len", type=int, default=20, help="Length of motion") + + self.parser.add_argument('--max_epoch', type=int, default=300, help='Training iterations') + + self.parser.add_argument('--lr', type=float, default=1e-4, help='Layers of GRU') + + self.parser.add_argument('--is_continue', action="store_true", help='Training iterations') + + self.parser.add_argument('--log_every', type=int, default=50, help='Frequency of printing training progress') + self.parser.add_argument('--save_every_e', type=int, default=5, help='Frequency of printing training progress') + self.parser.add_argument('--eval_every_e', type=int, default=3, help='Frequency of printing training progress') + self.parser.add_argument('--save_latest', type=int, default=500, help='Frequency of printing training progress') + + def parse(self): + self.opt = self.parser.parse_args() + self.opt.is_train = True + # args = vars(self.opt) + return self.opt diff --git a/options/vq_option.py b/options/vq_option.py new file mode 100644 index 0000000000000000000000000000000000000000..5dbd91446675184e358b7687c335f9e99e78fdb9 --- /dev/null +++ b/options/vq_option.py @@ -0,0 +1,89 @@ +import argparse +import os +import torch + +def arg_parse(is_train=False): + parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter) + + ## dataloader + parser.add_argument('--dataset_name', type=str, default='humanml3d', help='dataset directory') + parser.add_argument('--batch_size', default=256, type=int, help='batch size') + parser.add_argument('--window_size', type=int, default=64, help='training motion length') + parser.add_argument("--gpu_id", type=int, default=0, help='GPU id') + + ## optimization + parser.add_argument('--max_epoch', default=50, type=int, help='number of total epochs to run') + # parser.add_argument('--total_iter', default=None, type=int, help='number of total iterations to run') + parser.add_argument('--warm_up_iter', default=2000, type=int, help='number of total iterations for warmup') + parser.add_argument('--lr', default=2e-4, type=float, help='max learning rate') + parser.add_argument('--milestones', default=[150000, 250000], nargs="+", type=int, help="learning rate schedule (iterations)") + parser.add_argument('--gamma', default=0.1, type=float, help="learning rate decay") + + parser.add_argument('--weight_decay', default=0.0, type=float, help='weight decay') + parser.add_argument("--commit", type=float, default=0.02, help="hyper-parameter for the commitment loss") + parser.add_argument('--loss_vel', type=float, default=0.5, help='hyper-parameter for the velocity loss') + parser.add_argument('--recons_loss', type=str, default='l1_smooth', help='reconstruction loss') + + ## vqvae arch + parser.add_argument("--code_dim", type=int, default=512, help="embedding dimension") + parser.add_argument("--nb_code", type=int, default=512, help="nb of embedding") + parser.add_argument("--mu", type=float, default=0.99, help="exponential moving average to update the codebook") + parser.add_argument("--down_t", type=int, default=2, help="downsampling rate") + parser.add_argument("--stride_t", type=int, default=2, help="stride size") + parser.add_argument("--width", type=int, default=512, help="width of the network") + parser.add_argument("--depth", type=int, default=3, help="num of resblocks for each res") + parser.add_argument("--dilation_growth_rate", type=int, default=3, help="dilation growth rate") + parser.add_argument("--output_emb_width", type=int, default=512, help="output embedding width") + parser.add_argument('--vq_act', type=str, default='relu', choices=['relu', 'silu', 'gelu'], + help='dataset directory') + parser.add_argument('--vq_norm', type=str, default=None, help='dataset directory') + + parser.add_argument('--num_quantizers', type=int, default=3, help='num_quantizers') + parser.add_argument('--shared_codebook', action="store_true") + parser.add_argument('--quantize_dropout_prob', type=float, default=0.2, help='quantize_dropout_prob') + # parser.add_argument('--use_vq_prob', type=float, default=0.8, help='quantize_dropout_prob') + + parser.add_argument('--ext', type=str, default='default', help='reconstruction loss') + + + ## other + parser.add_argument('--name', type=str, default="test", help='Name of this trial') + parser.add_argument('--is_continue', action="store_true", help='Name of this trial') + parser.add_argument('--checkpoints_dir', type=str, default='./checkpoints', help='models are saved here') + parser.add_argument('--log_every', default=10, type=int, help='iter log frequency') + parser.add_argument('--save_latest', default=500, type=int, help='iter save latest model frequency') + parser.add_argument('--save_every_e', default=2, type=int, help='save model every n epoch') + parser.add_argument('--eval_every_e', default=1, type=int, help='save eval results every n epoch') + # parser.add_argument('--early_stop_e', default=5, type=int, help='early stopping epoch') + parser.add_argument('--feat_bias', type=float, default=5, help='Layers of GRU') + + parser.add_argument('--which_epoch', type=str, default="all", help='Name of this trial') + + ## For Res Predictor only + parser.add_argument('--vq_name', type=str, default="rvq_nq6_dc512_nc512_noshare_qdp0.2", help='Name of this trial') + parser.add_argument('--n_res', type=int, default=2, help='Name of this trial') + parser.add_argument('--do_vq_res', action="store_true") + parser.add_argument("--seed", default=3407, type=int) + + opt = parser.parse_args() + torch.cuda.set_device(opt.gpu_id) + + args = vars(opt) + + print('------------ Options -------------') + for k, v in sorted(args.items()): + print('%s: %s' % (str(k), str(v))) + print('-------------- End ----------------') + opt.is_train = is_train + if is_train: + # save to the disk + expr_dir = os.path.join(opt.checkpoints_dir, opt.dataset_name, opt.name) + if not os.path.exists(expr_dir): + os.makedirs(expr_dir) + file_name = os.path.join(expr_dir, 'opt.txt') + with open(file_name, 'wt') as opt_file: + opt_file.write('------------ Options -------------\n') + for k, v in sorted(args.items()): + opt_file.write('%s: %s\n' % (str(k), str(v))) + opt_file.write('-------------- End ----------------\n') + return opt \ No newline at end of file diff --git a/packages.txt b/packages.txt new file mode 100644 index 0000000000000000000000000000000000000000..07fb5b83ca699cc2e183493a09e85a8cd7d399b8 --- /dev/null +++ b/packages.txt @@ -0,0 +1 @@ +unzip \ No newline at end of file diff --git a/prepare/.DS_Store b/prepare/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..fa8e0269a4432e16e6160aa80d06b285af126d69 Binary files /dev/null and b/prepare/.DS_Store differ diff --git a/prepare/download_evaluator.sh b/prepare/download_evaluator.sh new file mode 100644 index 0000000000000000000000000000000000000000..f285239cd47b03895ad474ccbdae7e9b65e9d7b9 --- /dev/null +++ b/prepare/download_evaluator.sh @@ -0,0 +1,24 @@ +cd checkpoints + +cd t2m +echo -e "Downloading evaluation models for HumanML3D dataset" +gdown --fuzzy https://drive.google.com/file/d/1oLhSH7zTlYkQdUWPv3-v4opigB7pXkFk/view?usp=sharing +echo -e "Unzipping humanml3d_evaluator.zip" +unzip humanml3d_evaluator.zip + +echo -e "Clearning humanml3d_evaluator.zip" +rm humanml3d_evaluator.zip + +cd ../kit/ +echo -e "Downloading pretrained models for KIT-ML dataset" +gdown --fuzzy https://drive.google.com/file/d/115n1ijntyKDDIZZEuA_aBgffyplNE5az/view?usp=sharing + +echo -e "Unzipping kit_evaluator.zip" +unzip kit_evaluator.zip + +echo -e "Clearning kit_evaluator.zip" +rm kit_evaluator.zip + +cd ../../ + +echo -e "Downloading done!" \ No newline at end of file diff --git a/prepare/download_glove.sh b/prepare/download_glove.sh new file mode 100644 index 0000000000000000000000000000000000000000..227312f56d654a01f8437573e14f76699f6d8c3a --- /dev/null +++ b/prepare/download_glove.sh @@ -0,0 +1,9 @@ +echo -e "Downloading glove (in use by the evaluators, not by MoMask itself)" +gdown --fuzzy https://drive.google.com/file/d/1cmXKUT31pqd7_XpJAiWEo1K81TMYHA5n/view?usp=sharing +rm -rf glove + +unzip glove.zip +echo -e "Cleaning\n" +rm glove.zip + +echo -e "Downloading done!" \ No newline at end of file diff --git a/prepare/download_models.sh b/prepare/download_models.sh new file mode 100644 index 0000000000000000000000000000000000000000..8697badde2276e22ca0658e077b3aa8fb41d4b95 --- /dev/null +++ b/prepare/download_models.sh @@ -0,0 +1,31 @@ +rm -rf checkpoints +mkdir checkpoints +cd checkpoints +mkdir t2m + +cd t2m +echo -e "Downloading pretrained models for HumanML3D dataset" +gdown --fuzzy https://drive.google.com/file/d/1dtKP2xBk-UjG9o16MVfBJDmGNSI56Dch/view?usp=sharing + +echo -e "Unzipping humanml3d_models.zip" +unzip humanml3d_models.zip + +echo -e "Cleaning humanml3d_models.zip" +rm humanml3d_models.zip + +cd ../ +mkdir kit +cd kit + +echo -e "Downloading pretrained models for KIT-ML dataset" +gdown --fuzzy https://drive.google.com/file/d/1MNMdUdn5QoO8UW1iwTcZ0QNaLSH4A6G9/view?usp=sharing + +echo -e "Unzipping kit_models.zip" +unzip kit_models.zip + +echo -e "Cleaning kit_models.zip" +rm kit_models.zip + +cd ../../ + +echo -e "Downloading done!" \ No newline at end of file diff --git a/prepare/download_models_demo.sh b/prepare/download_models_demo.sh new file mode 100644 index 0000000000000000000000000000000000000000..9439e05620622738568ce95592788a79008bacee --- /dev/null +++ b/prepare/download_models_demo.sh @@ -0,0 +1,10 @@ +rm -rf checkpoints +mkdir checkpoints +cd checkpoints +mkdir t2m +cd t2m +echo -e "Downloading pretrained models for HumanML3D dataset" +gdown --fuzzy https://drive.google.com/file/d/1dtKP2xBk-UjG9o16MVfBJDmGNSI56Dch/view?usp=sharing +unzip humanml3d_models.zip +rm humanml3d_models.zip +cd ../../ \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..0567dc23df62ee35af145b4885ee5e90b67e7fc7 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,40 @@ +--extra-index-url https://download.pytorch.org/whl/cu113 +git+https://github.com/openai/CLIP.git +chumpy +einops==0.6.1 +exceptiongroup==1.2.0 +fastapi==0.103.2 +ffmpy==0.3.1 +fsspec==2023.1.0 +ftfy==6.1.1 +gdown==4.7.1 +google-auth==2.19.1 +google-auth-oauthlib==0.4.6 +gradio==3.34.0 +gradio_client==0.2.6 +grpcio==1.54.2 +h11==0.14.0 +httpcore==0.17.3 +httpx==0.24.1 +huggingface-hub==0.16.4 +importlib-metadata==5.0.0 +importlib-resources==5.12.0 +joblib +matplotlib==3.1.3 +numpy==1.21.5 +oauthlib==3.2.2 +orjson==3.9.7 +Pillow==9.2.0 +PyYAML==6.0 +scikit-learn +scipy +smplx==0.1.28 +sniffio==1.3.0 +torch==1.12.0 +torch-tb-profiler +torchaudio +torchvision +tornado +tqdm +trimesh +vector-quantize-pytorch==1.6.30 diff --git a/train_res_transformer.py b/train_res_transformer.py new file mode 100644 index 0000000000000000000000000000000000000000..2b1bde82bab17ea01e4a96a4718cdf336144f1a5 --- /dev/null +++ b/train_res_transformer.py @@ -0,0 +1,171 @@ +import os +import torch +import numpy as np + +from torch.utils.data import DataLoader +from os.path import join as pjoin + +from models.mask_transformer.transformer import ResidualTransformer +from models.mask_transformer.transformer_trainer import ResidualTransformerTrainer +from models.vq.model import RVQVAE + +from options.train_option import TrainT2MOptions + +from utils.plot_script import plot_3d_motion +from utils.motion_process import recover_from_ric +from utils.get_opt import get_opt +from utils.fixseed import fixseed +from utils.paramUtil import t2m_kinematic_chain, kit_kinematic_chain + +from data.t2m_dataset import Text2MotionDataset +from motion_loaders.dataset_motion_loader import get_dataset_motion_loader +from models.t2m_eval_wrapper import EvaluatorModelWrapper + + +def plot_t2m(data, save_dir, captions, m_lengths): + data = train_dataset.inv_transform(data) + + # print(ep_curves.shape) + for i, (caption, joint_data) in enumerate(zip(captions, data)): + joint_data = joint_data[:m_lengths[i]] + joint = recover_from_ric(torch.from_numpy(joint_data).float(), opt.joints_num).numpy() + save_path = pjoin(save_dir, '%02d.mp4'%i) + # print(joint.shape) + plot_3d_motion(save_path, kinematic_chain, joint, title=caption, fps=20) + +def load_vq_model(): + opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'opt.txt') + vq_opt = get_opt(opt_path, opt.device) + vq_model = RVQVAE(vq_opt, + dim_pose, + vq_opt.nb_code, + vq_opt.code_dim, + vq_opt.output_emb_width, + vq_opt.down_t, + vq_opt.stride_t, + vq_opt.width, + vq_opt.depth, + vq_opt.dilation_growth_rate, + vq_opt.vq_act, + vq_opt.vq_norm) + ckpt = torch.load(pjoin(vq_opt.checkpoints_dir, vq_opt.dataset_name, vq_opt.name, 'model', 'net_best_fid.tar'), + map_location=opt.device) + model_key = 'vq_model' if 'vq_model' in ckpt else 'net' + vq_model.load_state_dict(ckpt[model_key]) + print(f'Loading VQ Model {opt.vq_name}') + vq_model.to(opt.device) + return vq_model, vq_opt + +if __name__ == '__main__': + parser = TrainT2MOptions() + opt = parser.parse() + fixseed(opt.seed) + + opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) + torch.autograd.set_detect_anomaly(True) + + opt.save_root = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + opt.model_dir = pjoin(opt.save_root, 'model') + # opt.meta_dir = pjoin(opt.save_root, 'meta') + opt.eval_dir = pjoin(opt.save_root, 'animation') + opt.log_dir = pjoin('./log/res/', opt.dataset_name, opt.name) + + os.makedirs(opt.model_dir, exist_ok=True) + # os.makedirs(opt.meta_dir, exist_ok=True) + os.makedirs(opt.eval_dir, exist_ok=True) + os.makedirs(opt.log_dir, exist_ok=True) + + if opt.dataset_name == 't2m': + opt.data_root = './dataset/HumanML3D' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.joints_num = 22 + opt.max_motion_len = 55 + dim_pose = 263 + radius = 4 + fps = 20 + kinematic_chain = t2m_kinematic_chain + dataset_opt_path = './checkpoints/t2m/Comp_v6_KLD005/opt.txt' + + elif opt.dataset_name == 'kit': #TODO + opt.data_root = './dataset/KIT-ML' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.joints_num = 21 + radius = 240 * 8 + fps = 12.5 + dim_pose = 251 + opt.max_motion_len = 55 + kinematic_chain = kit_kinematic_chain + dataset_opt_path = './checkpoints/kit/Comp_v6_KLD005/opt.txt' + + else: + raise KeyError('Dataset Does Not Exist') + + opt.text_dir = pjoin(opt.data_root, 'texts') + + vq_model, vq_opt = load_vq_model() + + clip_version = 'ViT-B/32' + + opt.num_tokens = vq_opt.nb_code + opt.num_quantizers = vq_opt.num_quantizers + + # if opt.is_v2: + res_transformer = ResidualTransformer(code_dim=vq_opt.code_dim, + cond_mode='text', + latent_dim=opt.latent_dim, + ff_size=opt.ff_size, + num_layers=opt.n_layers, + num_heads=opt.n_heads, + dropout=opt.dropout, + clip_dim=512, + shared_codebook=vq_opt.shared_codebook, + cond_drop_prob=opt.cond_drop_prob, + # codebook=vq_model.quantizer.codebooks[0] if opt.fix_token_emb else None, + share_weight=opt.share_weight, + clip_version=clip_version, + opt=opt) + # else: + # res_transformer = ResidualTransformer(code_dim=vq_opt.code_dim, + # cond_mode='text', + # latent_dim=opt.latent_dim, + # ff_size=opt.ff_size, + # num_layers=opt.n_layers, + # num_heads=opt.n_heads, + # dropout=opt.dropout, + # clip_dim=512, + # shared_codebook=vq_opt.shared_codebook, + # cond_drop_prob=opt.cond_drop_prob, + # # codebook=vq_model.quantizer.codebooks[0] if opt.fix_token_emb else None, + # clip_version=clip_version, + # opt=opt) + + + all_params = 0 + pc_transformer = sum(param.numel() for param in res_transformer.parameters_wo_clip()) + + print(res_transformer) + # print("Total parameters of t2m_transformer net: {:.2f}M".format(pc_transformer / 1000_000)) + all_params += pc_transformer + + print('Total parameters of all models: {:.2f}M'.format(all_params / 1000_000)) + + mean = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'meta', 'mean.npy')) + std = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'meta', 'std.npy')) + + train_split_file = pjoin(opt.data_root, 'train.txt') + val_split_file = pjoin(opt.data_root, 'val.txt') + + train_dataset = Text2MotionDataset(opt, mean, std, train_split_file) + val_dataset = Text2MotionDataset(opt, mean, std, val_split_file) + + train_loader = DataLoader(train_dataset, batch_size=opt.batch_size, num_workers=4, shuffle=True, drop_last=True) + val_loader = DataLoader(val_dataset, batch_size=opt.batch_size, num_workers=4, shuffle=True, drop_last=True) + + eval_val_loader, _ = get_dataset_motion_loader(dataset_opt_path, 32, 'val', device=opt.device) + + wrapper_opt = get_opt(dataset_opt_path, torch.device('cuda')) + eval_wrapper = EvaluatorModelWrapper(wrapper_opt) + + trainer = ResidualTransformerTrainer(opt, res_transformer, vq_model) + + trainer.train(train_loader, val_loader, eval_val_loader, eval_wrapper=eval_wrapper, plot_eval=plot_t2m) \ No newline at end of file diff --git a/train_t2m_transformer.py b/train_t2m_transformer.py new file mode 100644 index 0000000000000000000000000000000000000000..7b4089f148c38f77af5111ecc06ec9d592bb6fca --- /dev/null +++ b/train_t2m_transformer.py @@ -0,0 +1,153 @@ +import os +import torch +import numpy as np + +from torch.utils.data import DataLoader +from os.path import join as pjoin + +from models.mask_transformer.transformer import MaskTransformer +from models.mask_transformer.transformer_trainer import MaskTransformerTrainer +from models.vq.model import RVQVAE + +from options.train_option import TrainT2MOptions + +from utils.plot_script import plot_3d_motion +from utils.motion_process import recover_from_ric +from utils.get_opt import get_opt +from utils.fixseed import fixseed +from utils.paramUtil import t2m_kinematic_chain, kit_kinematic_chain + +from data.t2m_dataset import Text2MotionDataset +from motion_loaders.dataset_motion_loader import get_dataset_motion_loader +from models.t2m_eval_wrapper import EvaluatorModelWrapper + + +def plot_t2m(data, save_dir, captions, m_lengths): + data = train_dataset.inv_transform(data) + + # print(ep_curves.shape) + for i, (caption, joint_data) in enumerate(zip(captions, data)): + joint_data = joint_data[:m_lengths[i]] + joint = recover_from_ric(torch.from_numpy(joint_data).float(), opt.joints_num).numpy() + save_path = pjoin(save_dir, '%02d.mp4'%i) + # print(joint.shape) + plot_3d_motion(save_path, kinematic_chain, joint, title=caption, fps=20) + +def load_vq_model(): + opt_path = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'opt.txt') + vq_opt = get_opt(opt_path, opt.device) + vq_model = RVQVAE(vq_opt, + dim_pose, + vq_opt.nb_code, + vq_opt.code_dim, + vq_opt.output_emb_width, + vq_opt.down_t, + vq_opt.stride_t, + vq_opt.width, + vq_opt.depth, + vq_opt.dilation_growth_rate, + vq_opt.vq_act, + vq_opt.vq_norm) + ckpt = torch.load(pjoin(vq_opt.checkpoints_dir, vq_opt.dataset_name, vq_opt.name, 'model', 'net_best_fid.tar'), + map_location='cpu') + model_key = 'vq_model' if 'vq_model' in ckpt else 'net' + vq_model.load_state_dict(ckpt[model_key]) + print(f'Loading VQ Model {opt.vq_name}') + return vq_model, vq_opt + +if __name__ == '__main__': + parser = TrainT2MOptions() + opt = parser.parse() + fixseed(opt.seed) + + opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) + torch.autograd.set_detect_anomaly(True) + + opt.save_root = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + opt.model_dir = pjoin(opt.save_root, 'model') + # opt.meta_dir = pjoin(opt.save_root, 'meta') + opt.eval_dir = pjoin(opt.save_root, 'animation') + opt.log_dir = pjoin('./log/t2m/', opt.dataset_name, opt.name) + + os.makedirs(opt.model_dir, exist_ok=True) + # os.makedirs(opt.meta_dir, exist_ok=True) + os.makedirs(opt.eval_dir, exist_ok=True) + os.makedirs(opt.log_dir, exist_ok=True) + + if opt.dataset_name == 't2m': + opt.data_root = './dataset/HumanML3D' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.joints_num = 22 + opt.max_motion_len = 55 + dim_pose = 263 + radius = 4 + fps = 20 + kinematic_chain = t2m_kinematic_chain + dataset_opt_path = './checkpoints/t2m/Comp_v6_KLD005/opt.txt' + + elif opt.dataset_name == 'kit': #TODO + opt.data_root = './dataset/KIT-ML' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.joints_num = 21 + radius = 240 * 8 + fps = 12.5 + dim_pose = 251 + opt.max_motion_len = 55 + kinematic_chain = kit_kinematic_chain + dataset_opt_path = './checkpoints/kit/Comp_v6_KLD005/opt.txt' + + else: + raise KeyError('Dataset Does Not Exist') + + opt.text_dir = pjoin(opt.data_root, 'texts') + + vq_model, vq_opt = load_vq_model() + + clip_version = 'ViT-B/32' + + opt.num_tokens = vq_opt.nb_code + + t2m_transformer = MaskTransformer(code_dim=vq_opt.code_dim, + cond_mode='text', + latent_dim=opt.latent_dim, + ff_size=opt.ff_size, + num_layers=opt.n_layers, + num_heads=opt.n_heads, + dropout=opt.dropout, + clip_dim=512, + cond_drop_prob=opt.cond_drop_prob, + clip_version=clip_version, + opt=opt) + + # if opt.fix_token_emb: + # t2m_transformer.load_and_freeze_token_emb(vq_model.quantizer.codebooks[0]) + + all_params = 0 + pc_transformer = sum(param.numel() for param in t2m_transformer.parameters_wo_clip()) + + # print(t2m_transformer) + # print("Total parameters of t2m_transformer net: {:.2f}M".format(pc_transformer / 1000_000)) + all_params += pc_transformer + + print('Total parameters of all models: {:.2f}M'.format(all_params / 1000_000)) + + mean = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'meta', 'mean.npy')) + std = np.load(pjoin(opt.checkpoints_dir, opt.dataset_name, opt.vq_name, 'meta', 'std.npy')) + + train_split_file = pjoin(opt.data_root, 'train.txt') + val_split_file = pjoin(opt.data_root, 'val.txt') + + train_dataset = Text2MotionDataset(opt, mean, std, train_split_file) + val_dataset = Text2MotionDataset(opt, mean, std, val_split_file) + + train_loader = DataLoader(train_dataset, batch_size=opt.batch_size, num_workers=4, shuffle=True, drop_last=True) + val_loader = DataLoader(val_dataset, batch_size=opt.batch_size, num_workers=4, shuffle=True, drop_last=True) + + eval_val_loader, _ = get_dataset_motion_loader(dataset_opt_path, 32, 'val', device=opt.device) + + wrapper_opt = get_opt(dataset_opt_path, torch.device('cuda')) + eval_wrapper = EvaluatorModelWrapper(wrapper_opt) + + trainer = MaskTransformerTrainer(opt, t2m_transformer, vq_model) + + trainer.train(train_loader, val_loader, eval_val_loader, eval_wrapper=eval_wrapper, plot_eval=plot_t2m) \ No newline at end of file diff --git a/train_vq.py b/train_vq.py new file mode 100644 index 0000000000000000000000000000000000000000..a01fd117314914f1063620e36e26313188718d68 --- /dev/null +++ b/train_vq.py @@ -0,0 +1,120 @@ +import os +from os.path import join as pjoin + +import torch +from torch.utils.data import DataLoader + +from models.vq.model import RVQVAE +from models.vq.vq_trainer import RVQTokenizerTrainer +from options.vq_option import arg_parse +from data.t2m_dataset import MotionDataset +from utils import paramUtil +import numpy as np + +from models.t2m_eval_wrapper import EvaluatorModelWrapper +from utils.get_opt import get_opt +from motion_loaders.dataset_motion_loader import get_dataset_motion_loader + +from utils.motion_process import recover_from_ric +from utils.plot_script import plot_3d_motion + +os.environ["OMP_NUM_THREADS"] = "1" + +def plot_t2m(data, save_dir): + data = train_dataset.inv_transform(data) + for i in range(len(data)): + joint_data = data[i] + joint = recover_from_ric(torch.from_numpy(joint_data).float(), opt.joints_num).numpy() + save_path = pjoin(save_dir, '%02d.mp4' % (i)) + plot_3d_motion(save_path, kinematic_chain, joint, title="None", fps=fps, radius=radius) + + +if __name__ == "__main__": + # torch.autograd.set_detect_anomaly(True) + opt = arg_parse(True) + + opt.device = torch.device("cpu" if opt.gpu_id == -1 else "cuda:" + str(opt.gpu_id)) + print(f"Using Device: {opt.device}") + + opt.save_root = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + opt.model_dir = pjoin(opt.save_root, 'model') + opt.meta_dir = pjoin(opt.save_root, 'meta') + opt.eval_dir = pjoin(opt.save_root, 'animation') + opt.log_dir = pjoin('./log/vq/', opt.dataset_name, opt.name) + + os.makedirs(opt.model_dir, exist_ok=True) + os.makedirs(opt.meta_dir, exist_ok=True) + os.makedirs(opt.eval_dir, exist_ok=True) + os.makedirs(opt.log_dir, exist_ok=True) + + if opt.dataset_name == "t2m": + opt.data_root = './dataset/HumanML3D/' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.text_dir = pjoin(opt.data_root, 'texts') + opt.joints_num = 22 + dim_pose = 263 + fps = 20 + radius = 4 + kinematic_chain = paramUtil.t2m_kinematic_chain + dataset_opt_path = './checkpoints/t2m/Comp_v6_KLD005/opt.txt' + + elif opt.dataset_name == "kit": + opt.data_root = './dataset/KIT-ML/' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.text_dir = pjoin(opt.data_root, 'texts') + opt.joints_num = 21 + radius = 240 * 8 + fps = 12.5 + dim_pose = 251 + opt.max_motion_length = 196 + kinematic_chain = paramUtil.kit_kinematic_chain + dataset_opt_path = './checkpoints/kit/Comp_v6_KLD005/opt.txt' + else: + raise KeyError('Dataset Does not Exists') + + wrapper_opt = get_opt(dataset_opt_path, torch.device('cuda')) + eval_wrapper = EvaluatorModelWrapper(wrapper_opt) + + mean = np.load(pjoin(opt.data_root, 'Mean.npy')) + std = np.load(pjoin(opt.data_root, 'Std.npy')) + + train_split_file = pjoin(opt.data_root, 'train.txt') + val_split_file = pjoin(opt.data_root, 'val.txt') + + + net = RVQVAE(opt, + dim_pose, + opt.nb_code, + opt.code_dim, + opt.code_dim, + opt.down_t, + opt.stride_t, + opt.width, + opt.depth, + opt.dilation_growth_rate, + opt.vq_act, + opt.vq_norm) + + pc_vq = sum(param.numel() for param in net.parameters()) + print(net) + # print("Total parameters of discriminator net: {}".format(pc_vq)) + # all_params += pc_vq_dis + + print('Total parameters of all models: {}M'.format(pc_vq/1000_000)) + + trainer = RVQTokenizerTrainer(opt, vq_model=net) + + train_dataset = MotionDataset(opt, mean, std, train_split_file) + val_dataset = MotionDataset(opt, mean, std, val_split_file) + + train_loader = DataLoader(train_dataset, batch_size=opt.batch_size, drop_last=True, num_workers=4, + shuffle=True, pin_memory=True) + val_loader = DataLoader(val_dataset, batch_size=opt.batch_size, drop_last=True, num_workers=4, + shuffle=True, pin_memory=True) + eval_val_loader, _ = get_dataset_motion_loader(dataset_opt_path, 32, 'test', device=opt.device) + trainer.train(train_loader, val_loader, eval_val_loader, eval_wrapper, plot_t2m) + +## train_vq.py --dataset_name kit --batch_size 512 --name VQVAE_dp2 --gpu_id 3 +## train_vq.py --dataset_name kit --batch_size 256 --name VQVAE_dp2_b256 --gpu_id 2 +## train_vq.py --dataset_name kit --batch_size 1024 --name VQVAE_dp2_b1024 --gpu_id 1 +## python train_vq.py --dataset_name kit --batch_size 256 --name VQVAE_dp1_b256 --gpu_id 2 \ No newline at end of file diff --git a/utils/__pycache__/eval_t2m.cpython-310.pyc b/utils/__pycache__/eval_t2m.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fd1473cb4e8ffc99671bbe964a4e9c92e3a5a265 Binary files /dev/null and b/utils/__pycache__/eval_t2m.cpython-310.pyc differ diff --git a/utils/__pycache__/get_opt.cpython-310.pyc b/utils/__pycache__/get_opt.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a43f025c42e1fffaa35664e8c908afa0c03c26fd Binary files /dev/null and b/utils/__pycache__/get_opt.cpython-310.pyc differ diff --git a/utils/__pycache__/metrics.cpython-310.pyc b/utils/__pycache__/metrics.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..90c2bb4b2a2546186bdf2e0d3117eaa42c0ed0a6 Binary files /dev/null and b/utils/__pycache__/metrics.cpython-310.pyc differ diff --git a/utils/__pycache__/motion_process.cpython-310.pyc b/utils/__pycache__/motion_process.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..288ae1326fc32d5b26d5da9e9c3599e2e72f08cf Binary files /dev/null and b/utils/__pycache__/motion_process.cpython-310.pyc differ diff --git a/utils/__pycache__/paramUtil.cpython-310.pyc b/utils/__pycache__/paramUtil.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4fb6c02b8079492d29dc489f5f0c6f4a102b6bc1 Binary files /dev/null and b/utils/__pycache__/paramUtil.cpython-310.pyc differ diff --git a/utils/__pycache__/plot_script.cpython-310.pyc b/utils/__pycache__/plot_script.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..746e493f539be0f8d4a66981d99cb4998c580973 Binary files /dev/null and b/utils/__pycache__/plot_script.cpython-310.pyc differ diff --git a/utils/__pycache__/utils.cpython-310.pyc b/utils/__pycache__/utils.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..30ad0a004b9788cb5f54fc4fc7c89aa1f2cad1df Binary files /dev/null and b/utils/__pycache__/utils.cpython-310.pyc differ diff --git a/utils/__pycache__/word_vectorizer.cpython-310.pyc b/utils/__pycache__/word_vectorizer.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f9e8e21d01aa197620e4a5223e3700ae3536f1f6 Binary files /dev/null and b/utils/__pycache__/word_vectorizer.cpython-310.pyc differ diff --git a/utils/eval_t2m.py b/utils/eval_t2m.py new file mode 100644 index 0000000000000000000000000000000000000000..4217c20b1ac498f44e1661aab127b0e61149faf1 --- /dev/null +++ b/utils/eval_t2m.py @@ -0,0 +1,1159 @@ +import os + +import clip +import numpy as np +import torch +# from scipy import linalg +from utils.metrics import * +import torch.nn.functional as F +# import visualization.plot_3d_global as plot_3d +from utils.motion_process import recover_from_ric +# +# +# def tensorborad_add_video_xyz(writer, xyz, nb_iter, tag, nb_vis=4, title_batch=None, outname=None): +# xyz = xyz[:1] +# bs, seq = xyz.shape[:2] +# xyz = xyz.reshape(bs, seq, -1, 3) +# plot_xyz = plot_3d.draw_to_batch(xyz.cpu().numpy(), title_batch, outname) +# plot_xyz = np.transpose(plot_xyz, (0, 1, 4, 2, 3)) +# writer.add_video(tag, plot_xyz, nb_iter, fps=20) + +@torch.no_grad() +def evaluation_res_conv(out_dir, val_loader, res_model, vq_model, writer, ep, best_fid, best_div, best_top1, + best_top2, best_top3, best_matching, eval_wrapper, plot_func, + save_ckpt=True, save_anim=False, draw=True): + + vq_model.eval() + res_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + + R_precision_real = 0 + R_precision = 0 + + nb_sample = 0 + matching_score_real = 0 + matching_score_pred = 0 + for batch in val_loader: + # print(len(batch)) + word_embeddings, pos_one_hots, caption, sent_len, motion, m_length, token = batch + + motion = motion.cuda() + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, motion, m_length) + bs, seq = motion.shape[0], motion.shape[1] + + code_indices, all_codes = vq_model.encode(motion) + # print(all_codes.shape) + if ep == 0: + if len(all_codes.shape) == 4: + pred_codes = all_codes[0] + else: + pred_codes = vq_model.quantizer.dequantize(code_indices) + pred_codes = pred_codes.permute(0, 2, 1) + else: + if len(code_indices.shape) == 3: + pred_codes = res_model(code_indices[..., 0]) + else: + pred_codes = res_model(code_indices) + # print(pred_codes.shape) + pred_motions = vq_model.decoder(pred_codes) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_motions, + m_length) + + motion_pred_list.append(em_pred) + motion_annotation_list.append(em) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = "--> \t Eva. Ep %d:, FID. %.4f, Diversity Real. %.4f, Diversity. %.4f, R_precision_real. (%.4f, %.4f, %.4f), R_precision. (%.4f, %.4f, %.4f), matching_score_real. %.4f, matching_score_pred. %.4f"%\ + (ep, fid, diversity_real, diversity, R_precision_real[0],R_precision_real[1], R_precision_real[2], + R_precision[0],R_precision[1], R_precision[2], matching_score_real, matching_score_pred ) + # logger.info(msg) + print(msg) + + if draw: + writer.add_scalar('./Test/FID', fid, ep) + writer.add_scalar('./Test/Diversity', diversity, ep) + writer.add_scalar('./Test/top1', R_precision[0], ep) + writer.add_scalar('./Test/top2', R_precision[1], ep) + writer.add_scalar('./Test/top3', R_precision[2], ep) + writer.add_scalar('./Test/matching_score', matching_score_pred, ep) + + if fid < best_fid: + msg = "--> --> \t FID Improved from %.5f to %.5f !!!" % (best_fid, fid) + if draw: print(msg) + best_fid = fid + if save_ckpt: + torch.save({'res_model': res_model.state_dict(), 'ep': ep}, os.path.join(out_dir, 'net_best_fid.tar')) + + if abs(diversity_real - diversity) < abs(diversity_real - best_div): + msg = "--> --> \t Diversity Improved from %.5f to %.5f !!!"%(best_div, diversity) + if draw: print(msg) + best_div = diversity + # if save: + # torch.save({'net': net.state_dict()}, os.path.join(out_dir, 'net_best_div.pth')) + + if R_precision[0] > best_top1: + msg = "--> --> \t Top1 Improved from %.5f to %.5f !!!" % (best_top1, R_precision[0]) + if draw: print(msg) + best_top1 = R_precision[0] + + if R_precision[1] > best_top2: + msg = "--> --> \t Top2 Improved from %.5f to %.5f!!!" % (best_top2, R_precision[1]) + if draw: print(msg) + best_top2 = R_precision[1] + + if R_precision[2] > best_top3: + msg = "--> --> \t Top3 Improved from %.5f to %.5f !!!" % (best_top3, R_precision[2]) + if draw: print(msg) + best_top3 = R_precision[2] + + if matching_score_pred < best_matching: + msg = f"--> --> \t matching_score Improved from %.5f to %.5f !!!" % (best_matching, matching_score_pred) + if draw: print(msg) + if save_ckpt: + torch.save({'res_model': res_model.state_dict(), 'ep':ep}, os.path.join(out_dir, 'net_best_mm.tar')) + best_matching = matching_score_pred + # if save: + # torch.save({'net': net.state_dict()}, os.path.join(out_dir, 'net_best_matching.pth')) + + if save_anim: + rand_idx = torch.randint(bs, (3,)) + data = pred_motions[rand_idx].detach().cpu().numpy() + captions = [caption[k] for k in rand_idx] + lengths = m_length[rand_idx].cpu().numpy() + save_dir = os.path.join(out_dir, 'animation', 'E%04d' % ep) + os.makedirs(save_dir, exist_ok=True) + # print(lengths) + plot_func(data, save_dir, captions, lengths) + # if save: + # torch.save({'net': net.state_dict()}, os.path.join(out_dir, 'net_last.pth')) + + vq_model.train() + res_model.train() + return best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer + + +@torch.no_grad() +def evaluation_vqvae(out_dir, val_loader, net, writer, ep, best_fid, best_div, best_top1, + best_top2, best_top3, best_matching, eval_wrapper, save=True, draw=True): + net.eval() + + motion_annotation_list = [] + motion_pred_list = [] + + R_precision_real = 0 + R_precision = 0 + + nb_sample = 0 + matching_score_real = 0 + matching_score_pred = 0 + for batch in val_loader: + # print(len(batch)) + word_embeddings, pos_one_hots, caption, sent_len, motion, m_length, token = batch + + motion = motion.cuda() + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, motion, m_length) + bs, seq = motion.shape[0], motion.shape[1] + + # num_joints = 21 if motion.shape[-1] == 251 else 22 + + # pred_pose_eval = torch.zeros((bs, seq, motion.shape[-1])).cuda() + + pred_pose_eval, loss_commit, perplexity = net(motion) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_pose_eval, + m_length) + + motion_pred_list.append(em_pred) + motion_annotation_list.append(em) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = "--> \t Eva. Ep %d:, FID. %.4f, Diversity Real. %.4f, Diversity. %.4f, R_precision_real. (%.4f, %.4f, %.4f), R_precision. (%.4f, %.4f, %.4f), matching_score_real. %.4f, matching_score_pred. %.4f"%\ + (ep, fid, diversity_real, diversity, R_precision_real[0],R_precision_real[1], R_precision_real[2], + R_precision[0],R_precision[1], R_precision[2], matching_score_real, matching_score_pred ) + # logger.info(msg) + print(msg) + + if draw: + writer.add_scalar('./Test/FID', fid, ep) + writer.add_scalar('./Test/Diversity', diversity, ep) + writer.add_scalar('./Test/top1', R_precision[0], ep) + writer.add_scalar('./Test/top2', R_precision[1], ep) + writer.add_scalar('./Test/top3', R_precision[2], ep) + writer.add_scalar('./Test/matching_score', matching_score_pred, ep) + + if fid < best_fid: + msg = "--> --> \t FID Improved from %.5f to %.5f !!!" % (best_fid, fid) + if draw: print(msg) + best_fid = fid + if save: + torch.save({'vq_model': net.state_dict(), 'ep': ep}, os.path.join(out_dir, 'net_best_fid.tar')) + + if abs(diversity_real - diversity) < abs(diversity_real - best_div): + msg = "--> --> \t Diversity Improved from %.5f to %.5f !!!"%(best_div, diversity) + if draw: print(msg) + best_div = diversity + # if save: + # torch.save({'net': net.state_dict()}, os.path.join(out_dir, 'net_best_div.pth')) + + if R_precision[0] > best_top1: + msg = "--> --> \t Top1 Improved from %.5f to %.5f !!!" % (best_top1, R_precision[0]) + if draw: print(msg) + best_top1 = R_precision[0] + # if save: + # torch.save({'vq_model': net.state_dict(), 'ep':ep}, os.path.join(out_dir, 'net_best_top1.tar')) + + if R_precision[1] > best_top2: + msg = "--> --> \t Top2 Improved from %.5f to %.5f!!!" % (best_top2, R_precision[1]) + if draw: print(msg) + best_top2 = R_precision[1] + + if R_precision[2] > best_top3: + msg = "--> --> \t Top3 Improved from %.5f to %.5f !!!" % (best_top3, R_precision[2]) + if draw: print(msg) + best_top3 = R_precision[2] + + if matching_score_pred < best_matching: + msg = f"--> --> \t matching_score Improved from %.5f to %.5f !!!" % (best_matching, matching_score_pred) + if draw: print(msg) + best_matching = matching_score_pred + if save: + torch.save({'vq_model': net.state_dict(), 'ep': ep}, os.path.join(out_dir, 'net_best_mm.tar')) + + # if save: + # torch.save({'net': net.state_dict()}, os.path.join(out_dir, 'net_last.pth')) + + net.train() + return best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer + +@torch.no_grad() +def evaluation_vqvae_plus_mpjpe(val_loader, net, repeat_id, eval_wrapper, num_joint): + net.eval() + + motion_annotation_list = [] + motion_pred_list = [] + + R_precision_real = 0 + R_precision = 0 + + nb_sample = 0 + matching_score_real = 0 + matching_score_pred = 0 + mpjpe = 0 + num_poses = 0 + for batch in val_loader: + # print(len(batch)) + word_embeddings, pos_one_hots, caption, sent_len, motion, m_length, token = batch + + motion = motion.cuda() + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, motion, m_length) + bs, seq = motion.shape[0], motion.shape[1] + + # num_joints = 21 if motion.shape[-1] == 251 else 22 + + # pred_pose_eval = torch.zeros((bs, seq, motion.shape[-1])).cuda() + + pred_pose_eval, loss_commit, perplexity = net(motion) + # all_indices,_ = net.encode(motion) + # pred_pose_eval = net.forward_decoder(all_indices[..., :1]) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_pose_eval, + m_length) + + bgt = val_loader.dataset.inv_transform(motion.detach().cpu().numpy()) + bpred = val_loader.dataset.inv_transform(pred_pose_eval.detach().cpu().numpy()) + for i in range(bs): + gt = recover_from_ric(torch.from_numpy(bgt[i, :m_length[i]]).float(), num_joint) + pred = recover_from_ric(torch.from_numpy(bpred[i, :m_length[i]]).float(), num_joint) + + mpjpe += torch.sum(calculate_mpjpe(gt, pred)) + # print(calculate_mpjpe(gt, pred).shape, gt.shape, pred.shape) + num_poses += gt.shape[0] + + # print(mpjpe, num_poses) + # exit() + + motion_pred_list.append(em_pred) + motion_annotation_list.append(em) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + mpjpe = mpjpe / num_poses + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = "--> \t Eva. Re %d:, FID. %.4f, Diversity Real. %.4f, Diversity. %.4f, R_precision_real. (%.4f, %.4f, %.4f), R_precision. (%.4f, %.4f, %.4f), matching_real. %.4f, matching_pred. %.4f, MPJPE. %.4f" % \ + (repeat_id, fid, diversity_real, diversity, R_precision_real[0], R_precision_real[1], R_precision_real[2], + R_precision[0], R_precision[1], R_precision[2], matching_score_real, matching_score_pred, mpjpe) + # logger.info(msg) + print(msg) + return fid, diversity, R_precision, matching_score_pred, mpjpe + +@torch.no_grad() +def evaluation_vqvae_plus_l1(val_loader, net, repeat_id, eval_wrapper, num_joint): + net.eval() + + motion_annotation_list = [] + motion_pred_list = [] + + R_precision_real = 0 + R_precision = 0 + + nb_sample = 0 + matching_score_real = 0 + matching_score_pred = 0 + l1_dist = 0 + num_poses = 1 + for batch in val_loader: + # print(len(batch)) + word_embeddings, pos_one_hots, caption, sent_len, motion, m_length, token = batch + + motion = motion.cuda() + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, motion, m_length) + bs, seq = motion.shape[0], motion.shape[1] + + # num_joints = 21 if motion.shape[-1] == 251 else 22 + + # pred_pose_eval = torch.zeros((bs, seq, motion.shape[-1])).cuda() + + pred_pose_eval, loss_commit, perplexity = net(motion) + # all_indices,_ = net.encode(motion) + # pred_pose_eval = net.forward_decoder(all_indices[..., :1]) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_pose_eval, + m_length) + + bgt = val_loader.dataset.inv_transform(motion.detach().cpu().numpy()) + bpred = val_loader.dataset.inv_transform(pred_pose_eval.detach().cpu().numpy()) + for i in range(bs): + gt = recover_from_ric(torch.from_numpy(bgt[i, :m_length[i]]).float(), num_joint) + pred = recover_from_ric(torch.from_numpy(bpred[i, :m_length[i]]).float(), num_joint) + # gt = motion[i, :m_length[i]] + # pred = pred_pose_eval[i, :m_length[i]] + num_pose = gt.shape[0] + l1_dist += F.l1_loss(gt, pred) * num_pose + num_poses += num_pose + + motion_pred_list.append(em_pred) + motion_annotation_list.append(em) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + l1_dist = l1_dist / num_poses + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = "--> \t Eva. Re %d:, FID. %.4f, Diversity Real. %.4f, Diversity. %.4f, R_precision_real. (%.4f, %.4f, %.4f), R_precision. (%.4f, %.4f, %.4f), matching_real. %.4f, matching_pred. %.4f, mae. %.4f"%\ + (repeat_id, fid, diversity_real, diversity, R_precision_real[0],R_precision_real[1], R_precision_real[2], + R_precision[0],R_precision[1], R_precision[2], matching_score_real, matching_score_pred, l1_dist) + # logger.info(msg) + print(msg) + return fid, diversity, R_precision, matching_score_pred, l1_dist + + +@torch.no_grad() +def evaluation_res_plus_l1(val_loader, vq_model, res_model, repeat_id, eval_wrapper, num_joint, do_vq_res=True): + vq_model.eval() + res_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + + R_precision_real = 0 + R_precision = 0 + + nb_sample = 0 + matching_score_real = 0 + matching_score_pred = 0 + l1_dist = 0 + num_poses = 1 + for batch in val_loader: + # print(len(batch)) + word_embeddings, pos_one_hots, caption, sent_len, motion, m_length, token = batch + + motion = motion.cuda() + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, motion, m_length) + bs, seq = motion.shape[0], motion.shape[1] + + # num_joints = 21 if motion.shape[-1] == 251 else 22 + + # pred_pose_eval = torch.zeros((bs, seq, motion.shape[-1])).cuda() + + if do_vq_res: + code_ids, all_codes = vq_model.encode(motion) + if len(code_ids.shape) == 3: + pred_vq_codes = res_model(code_ids[..., 0]) + else: + pred_vq_codes = res_model(code_ids) + # pred_vq_codes = pred_vq_codes - pred_vq_res + all_codes[1:].sum(0) + pred_pose_eval = vq_model.decoder(pred_vq_codes) + else: + rec_motions, _, _ = vq_model(motion) + pred_pose_eval = res_model(rec_motions) # all_indices,_ = net.encode(motion) + # pred_pose_eval = net.forward_decoder(all_indices[..., :1]) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_pose_eval, + m_length) + + bgt = val_loader.dataset.inv_transform(motion.detach().cpu().numpy()) + bpred = val_loader.dataset.inv_transform(pred_pose_eval.detach().cpu().numpy()) + for i in range(bs): + gt = recover_from_ric(torch.from_numpy(bgt[i, :m_length[i]]).float(), num_joint) + pred = recover_from_ric(torch.from_numpy(bpred[i, :m_length[i]]).float(), num_joint) + # gt = motion[i, :m_length[i]] + # pred = pred_pose_eval[i, :m_length[i]] + num_pose = gt.shape[0] + l1_dist += F.l1_loss(gt, pred) * num_pose + num_poses += num_pose + + motion_pred_list.append(em_pred) + motion_annotation_list.append(em) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + l1_dist = l1_dist / num_poses + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = "--> \t Eva. Re %d:, FID. %.4f, Diversity Real. %.4f, Diversity. %.4f, R_precision_real. (%.4f, %.4f, %.4f), R_precision. (%.4f, %.4f, %.4f), matching_real. %.4f, matching_pred. %.4f, mae. %.4f"%\ + (repeat_id, fid, diversity_real, diversity, R_precision_real[0],R_precision_real[1], R_precision_real[2], + R_precision[0],R_precision[1], R_precision[2], matching_score_real, matching_score_pred, l1_dist) + # logger.info(msg) + print(msg) + return fid, diversity, R_precision, matching_score_pred, l1_dist + +@torch.no_grad() +def evaluation_mask_transformer(out_dir, val_loader, trans, vq_model, writer, ep, best_fid, best_div, + best_top1, best_top2, best_top3, best_matching, eval_wrapper, plot_func, + save_ckpt=False, save_anim=False): + + def save(file_name, ep): + t2m_trans_state_dict = trans.state_dict() + clip_weights = [e for e in t2m_trans_state_dict.keys() if e.startswith('clip_model.')] + for e in clip_weights: + del t2m_trans_state_dict[e] + state = { + 't2m_transformer': t2m_trans_state_dict, + # 'opt_t2m_transformer': self.opt_t2m_transformer.state_dict(), + # 'scheduler':self.scheduler.state_dict(), + 'ep': ep, + } + torch.save(state, file_name) + + trans.eval() + vq_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + R_precision_real = 0 + R_precision = 0 + matching_score_real = 0 + matching_score_pred = 0 + time_steps = 18 + if "kit" in out_dir: + cond_scale = 2 + else: + cond_scale = 4 + + # print(num_quantizer) + + # assert num_quantizer >= len(time_steps) and num_quantizer >= len(cond_scales) + + nb_sample = 0 + # for i in range(1): + for batch in val_loader: + word_embeddings, pos_one_hots, clip_text, sent_len, pose, m_length, token = batch + m_length = m_length.cuda() + + bs, seq = pose.shape[:2] + # num_joints = 21 if pose.shape[-1] == 251 else 22 + + # (b, seqlen) + mids = trans.generate(clip_text, m_length//4, time_steps, cond_scale, temperature=1) + + # motion_codes = motion_codes.permute(0, 2, 1) + mids.unsqueeze_(-1) + pred_motions = vq_model.forward_decoder(mids) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_motions.clone(), + m_length) + + pose = pose.cuda().float() + + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pose, m_length) + motion_annotation_list.append(em) + motion_pred_list.append(em_pred) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = f"--> \t Eva. Ep {ep} :, FID. {fid:.4f}, Diversity Real. {diversity_real:.4f}, Diversity. {diversity:.4f}, R_precision_real. {R_precision_real}, R_precision. {R_precision}, matching_score_real. {matching_score_real}, matching_score_pred. {matching_score_pred}" + print(msg) + + # if draw: + writer.add_scalar('./Test/FID', fid, ep) + writer.add_scalar('./Test/Diversity', diversity, ep) + writer.add_scalar('./Test/top1', R_precision[0], ep) + writer.add_scalar('./Test/top2', R_precision[1], ep) + writer.add_scalar('./Test/top3', R_precision[2], ep) + writer.add_scalar('./Test/matching_score', matching_score_pred, ep) + + + if fid < best_fid: + msg = f"--> --> \t FID Improved from {best_fid:.5f} to {fid:.5f} !!!" + print(msg) + best_fid, best_ep = fid, ep + if save_ckpt: + save(os.path.join(out_dir, 'model', 'net_best_fid.tar'), ep) + + if matching_score_pred < best_matching: + msg = f"--> --> \t matching_score Improved from {best_matching:.5f} to {matching_score_pred:.5f} !!!" + print(msg) + best_matching = matching_score_pred + + if abs(diversity_real - diversity) < abs(diversity_real - best_div): + msg = f"--> --> \t Diversity Improved from {best_div:.5f} to {diversity:.5f} !!!" + print(msg) + best_div = diversity + + if R_precision[0] > best_top1: + msg = f"--> --> \t Top1 Improved from {best_top1:.4f} to {R_precision[0]:.4f} !!!" + print(msg) + best_top1 = R_precision[0] + + if R_precision[1] > best_top2: + msg = f"--> --> \t Top2 Improved from {best_top2:.4f} to {R_precision[1]:.4f} !!!" + print(msg) + best_top2 = R_precision[1] + + if R_precision[2] > best_top3: + msg = f"--> --> \t Top3 Improved from {best_top3:.4f} to {R_precision[2]:.4f} !!!" + print(msg) + best_top3 = R_precision[2] + + if save_anim: + rand_idx = torch.randint(bs, (3,)) + data = pred_motions[rand_idx].detach().cpu().numpy() + captions = [clip_text[k] for k in rand_idx] + lengths = m_length[rand_idx].cpu().numpy() + save_dir = os.path.join(out_dir, 'animation', 'E%04d' % ep) + os.makedirs(save_dir, exist_ok=True) + # print(lengths) + plot_func(data, save_dir, captions, lengths) + + + return best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer + +@torch.no_grad() +def evaluation_res_transformer(out_dir, val_loader, trans, vq_model, writer, ep, best_fid, best_div, + best_top1, best_top2, best_top3, best_matching, eval_wrapper, plot_func, + save_ckpt=False, save_anim=False, cond_scale=2, temperature=1): + + def save(file_name, ep): + res_trans_state_dict = trans.state_dict() + clip_weights = [e for e in res_trans_state_dict.keys() if e.startswith('clip_model.')] + for e in clip_weights: + del res_trans_state_dict[e] + state = { + 'res_transformer': res_trans_state_dict, + # 'opt_t2m_transformer': self.opt_t2m_transformer.state_dict(), + # 'scheduler':self.scheduler.state_dict(), + 'ep': ep, + } + torch.save(state, file_name) + + trans.eval() + vq_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + R_precision_real = 0 + R_precision = 0 + matching_score_real = 0 + matching_score_pred = 0 + + # print(num_quantizer) + + # assert num_quantizer >= len(time_steps) and num_quantizer >= len(cond_scales) + + nb_sample = 0 + # for i in range(1): + for batch in val_loader: + word_embeddings, pos_one_hots, clip_text, sent_len, pose, m_length, token = batch + m_length = m_length.cuda().long() + pose = pose.cuda().float() + + bs, seq = pose.shape[:2] + # num_joints = 21 if pose.shape[-1] == 251 else 22 + + code_indices, all_codes = vq_model.encode(pose) + # (b, seqlen) + if ep == 0: + pred_ids = code_indices[..., 0:1] + else: + pred_ids = trans.generate(code_indices[..., 0], clip_text, m_length//4, + temperature=temperature, cond_scale=cond_scale) + # pred_codes = trans(code_indices[..., 0], clip_text, m_length//4, force_mask=force_mask) + + pred_motions = vq_model.forward_decoder(pred_ids) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_motions.clone(), + m_length) + + pose = pose.cuda().float() + + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pose, m_length) + motion_annotation_list.append(em) + motion_pred_list.append(em_pred) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = f"--> \t Eva. Ep {ep} :, FID. {fid:.4f}, Diversity Real. {diversity_real:.4f}, Diversity. {diversity:.4f}, R_precision_real. {R_precision_real}, R_precision. {R_precision}, matching_score_real. {matching_score_real}, matching_score_pred. {matching_score_pred}" + print(msg) + + # if draw: + writer.add_scalar('./Test/FID', fid, ep) + writer.add_scalar('./Test/Diversity', diversity, ep) + writer.add_scalar('./Test/top1', R_precision[0], ep) + writer.add_scalar('./Test/top2', R_precision[1], ep) + writer.add_scalar('./Test/top3', R_precision[2], ep) + writer.add_scalar('./Test/matching_score', matching_score_pred, ep) + + + if fid < best_fid: + msg = f"--> --> \t FID Improved from {best_fid:.5f} to {fid:.5f} !!!" + print(msg) + best_fid, best_ep = fid, ep + if save_ckpt: + save(os.path.join(out_dir, 'model', 'net_best_fid.tar'), ep) + + if matching_score_pred < best_matching: + msg = f"--> --> \t matching_score Improved from {best_matching:.5f} to {matching_score_pred:.5f} !!!" + print(msg) + best_matching = matching_score_pred + + if abs(diversity_real - diversity) < abs(diversity_real - best_div): + msg = f"--> --> \t Diversity Improved from {best_div:.5f} to {diversity:.5f} !!!" + print(msg) + best_div = diversity + + if R_precision[0] > best_top1: + msg = f"--> --> \t Top1 Improved from {best_top1:.4f} to {R_precision[0]:.4f} !!!" + print(msg) + best_top1 = R_precision[0] + + if R_precision[1] > best_top2: + msg = f"--> --> \t Top2 Improved from {best_top2:.4f} to {R_precision[1]:.4f} !!!" + print(msg) + best_top2 = R_precision[1] + + if R_precision[2] > best_top3: + msg = f"--> --> \t Top3 Improved from {best_top3:.4f} to {R_precision[2]:.4f} !!!" + print(msg) + best_top3 = R_precision[2] + + if save_anim: + rand_idx = torch.randint(bs, (3,)) + data = pred_motions[rand_idx].detach().cpu().numpy() + captions = [clip_text[k] for k in rand_idx] + lengths = m_length[rand_idx].cpu().numpy() + save_dir = os.path.join(out_dir, 'animation', 'E%04d' % ep) + os.makedirs(save_dir, exist_ok=True) + # print(lengths) + plot_func(data, save_dir, captions, lengths) + + + return best_fid, best_div, best_top1, best_top2, best_top3, best_matching, writer + + +@torch.no_grad() +def evaluation_res_transformer_plus_l1(val_loader, vq_model, trans, repeat_id, eval_wrapper, num_joint, + cond_scale=2, temperature=1, topkr=0.9, cal_l1=True): + + + trans.eval() + vq_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + R_precision_real = 0 + R_precision = 0 + matching_score_real = 0 + matching_score_pred = 0 + + # print(num_quantizer) + + # assert num_quantizer >= len(time_steps) and num_quantizer >= len(cond_scales) + + nb_sample = 0 + l1_dist = 0 + num_poses = 1 + # for i in range(1): + for batch in val_loader: + word_embeddings, pos_one_hots, clip_text, sent_len, pose, m_length, token = batch + m_length = m_length.cuda().long() + pose = pose.cuda().float() + + bs, seq = pose.shape[:2] + # num_joints = 21 if pose.shape[-1] == 251 else 22 + + code_indices, all_codes = vq_model.encode(pose) + # print(code_indices[0:2, :, 1]) + + pred_ids = trans.generate(code_indices[..., 0], clip_text, m_length//4, topk_filter_thres=topkr, + temperature=temperature, cond_scale=cond_scale) + # pred_codes = trans(code_indices[..., 0], clip_text, m_length//4, force_mask=force_mask) + + pred_motions = vq_model.forward_decoder(pred_ids) + + if cal_l1: + bgt = val_loader.dataset.inv_transform(pose.detach().cpu().numpy()) + bpred = val_loader.dataset.inv_transform(pred_motions.detach().cpu().numpy()) + for i in range(bs): + gt = recover_from_ric(torch.from_numpy(bgt[i, :m_length[i]]).float(), num_joint) + pred = recover_from_ric(torch.from_numpy(bpred[i, :m_length[i]]).float(), num_joint) + # gt = motion[i, :m_length[i]] + # pred = pred_pose_eval[i, :m_length[i]] + num_pose = gt.shape[0] + l1_dist += F.l1_loss(gt, pred) * num_pose + num_poses += num_pose + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_motions.clone(), + m_length) + + pose = pose.cuda().float() + + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pose, m_length) + motion_annotation_list.append(em) + motion_pred_list.append(em_pred) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + l1_dist = l1_dist / num_poses + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = "--> \t Eva. Re %d:, FID. %.4f, Diversity Real. %.4f, Diversity. %.4f, R_precision_real. (%.4f, %.4f, %.4f), R_precision. (%.4f, %.4f, %.4f), matching_real. %.4f, matching_pred. %.4f, mae. %.4f" % \ + (repeat_id, fid, diversity_real, diversity, R_precision_real[0], R_precision_real[1], R_precision_real[2], + R_precision[0], R_precision[1], R_precision[2], matching_score_real, matching_score_pred, l1_dist) + # logger.info(msg) + print(msg) + return fid, diversity, R_precision, matching_score_pred, l1_dist + + +@torch.no_grad() +def evaluation_mask_transformer_test(val_loader, vq_model, trans, repeat_id, eval_wrapper, + time_steps, cond_scale, temperature, topkr, gsample=True, force_mask=False, cal_mm=True): + trans.eval() + vq_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + motion_multimodality = [] + R_precision_real = 0 + R_precision = 0 + matching_score_real = 0 + matching_score_pred = 0 + multimodality = 0 + + nb_sample = 0 + if cal_mm: + num_mm_batch = 3 + else: + num_mm_batch = 0 + + for i, batch in enumerate(val_loader): + # print(i) + word_embeddings, pos_one_hots, clip_text, sent_len, pose, m_length, token = batch + m_length = m_length.cuda() + + bs, seq = pose.shape[:2] + # num_joints = 21 if pose.shape[-1] == 251 else 22 + + # for i in range(mm_batch) + if i < num_mm_batch: + # (b, seqlen, c) + motion_multimodality_batch = [] + for _ in range(30): + mids = trans.generate(clip_text, m_length // 4, time_steps, cond_scale, + temperature=temperature, topk_filter_thres=topkr, + gsample=gsample, force_mask=force_mask) + + # motion_codes = motion_codes.permute(0, 2, 1) + mids.unsqueeze_(-1) + pred_motions = vq_model.forward_decoder(mids) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_motions.clone(), + m_length) + # em_pred = em_pred.unsqueeze(1) #(bs, 1, d) + motion_multimodality_batch.append(em_pred.unsqueeze(1)) + motion_multimodality_batch = torch.cat(motion_multimodality_batch, dim=1) #(bs, 30, d) + motion_multimodality.append(motion_multimodality_batch) + else: + mids = trans.generate(clip_text, m_length // 4, time_steps, cond_scale, + temperature=temperature, topk_filter_thres=topkr, + force_mask=force_mask) + + # motion_codes = motion_codes.permute(0, 2, 1) + mids.unsqueeze_(-1) + pred_motions = vq_model.forward_decoder(mids) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, + pred_motions.clone(), + m_length) + + pose = pose.cuda().float() + + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pose, m_length) + motion_annotation_list.append(em) + motion_pred_list.append(em_pred) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + # print(et_pred.shape, em_pred.shape) + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + if not force_mask and cal_mm: + motion_multimodality = torch.cat(motion_multimodality, dim=0).cpu().numpy() + multimodality = calculate_multimodality(motion_multimodality, 10) + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = f"--> \t Eva. Repeat {repeat_id} :, FID. {fid:.4f}, " \ + f"Diversity Real. {diversity_real:.4f}, Diversity. {diversity:.4f}, " \ + f"R_precision_real. {R_precision_real}, R_precision. {R_precision}, " \ + f"matching_score_real. {matching_score_real:.4f}, matching_score_pred. {matching_score_pred:.4f}," \ + f"multimodality. {multimodality:.4f}" + print(msg) + return fid, diversity, R_precision, matching_score_pred, multimodality + + +@torch.no_grad() +def evaluation_mask_transformer_test_plus_res(val_loader, vq_model, res_model, trans, repeat_id, eval_wrapper, + time_steps, cond_scale, temperature, topkr, gsample=True, force_mask=False, + cal_mm=True, res_cond_scale=5): + trans.eval() + vq_model.eval() + res_model.eval() + + motion_annotation_list = [] + motion_pred_list = [] + motion_multimodality = [] + R_precision_real = 0 + R_precision = 0 + matching_score_real = 0 + matching_score_pred = 0 + multimodality = 0 + + nb_sample = 0 + if force_mask or (not cal_mm): + num_mm_batch = 0 + else: + num_mm_batch = 3 + + for i, batch in enumerate(val_loader): + word_embeddings, pos_one_hots, clip_text, sent_len, pose, m_length, token = batch + m_length = m_length.cuda() + + bs, seq = pose.shape[:2] + # num_joints = 21 if pose.shape[-1] == 251 else 22 + + # for i in range(mm_batch) + if i < num_mm_batch: + # (b, seqlen, c) + motion_multimodality_batch = [] + for _ in range(30): + mids = trans.generate(clip_text, m_length // 4, time_steps, cond_scale, + temperature=temperature, topk_filter_thres=topkr, + gsample=gsample, force_mask=force_mask) + + # motion_codes = motion_codes.permute(0, 2, 1) + # mids.unsqueeze_(-1) + pred_ids = res_model.generate(mids, clip_text, m_length // 4, temperature=1, cond_scale=res_cond_scale) + # pred_codes = trans(code_indices[..., 0], clip_text, m_length//4, force_mask=force_mask) + # pred_ids = torch.where(pred_ids==-1, 0, pred_ids) + + pred_motions = vq_model.forward_decoder(pred_ids) + + # pred_motions = vq_model.decoder(codes) + # pred_motions = vq_model.forward_decoder(mids) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pred_motions.clone(), + m_length) + # em_pred = em_pred.unsqueeze(1) #(bs, 1, d) + motion_multimodality_batch.append(em_pred.unsqueeze(1)) + motion_multimodality_batch = torch.cat(motion_multimodality_batch, dim=1) #(bs, 30, d) + motion_multimodality.append(motion_multimodality_batch) + else: + mids = trans.generate(clip_text, m_length // 4, time_steps, cond_scale, + temperature=temperature, topk_filter_thres=topkr, + force_mask=force_mask) + + # motion_codes = motion_codes.permute(0, 2, 1) + # mids.unsqueeze_(-1) + pred_ids = res_model.generate(mids, clip_text, m_length // 4, temperature=1, cond_scale=res_cond_scale) + # pred_codes = trans(code_indices[..., 0], clip_text, m_length//4, force_mask=force_mask) + # pred_ids = torch.where(pred_ids == -1, 0, pred_ids) + + pred_motions = vq_model.forward_decoder(pred_ids) + # pred_motions = vq_model.forward_decoder(mids) + + et_pred, em_pred = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, + pred_motions.clone(), + m_length) + + pose = pose.cuda().float() + + et, em = eval_wrapper.get_co_embeddings(word_embeddings, pos_one_hots, sent_len, pose, m_length) + motion_annotation_list.append(em) + motion_pred_list.append(em_pred) + + temp_R = calculate_R_precision(et.cpu().numpy(), em.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et.cpu().numpy(), em.cpu().numpy()).trace() + R_precision_real += temp_R + matching_score_real += temp_match + # print(et_pred.shape, em_pred.shape) + temp_R = calculate_R_precision(et_pred.cpu().numpy(), em_pred.cpu().numpy(), top_k=3, sum_all=True) + temp_match = euclidean_distance_matrix(et_pred.cpu().numpy(), em_pred.cpu().numpy()).trace() + R_precision += temp_R + matching_score_pred += temp_match + + nb_sample += bs + + motion_annotation_np = torch.cat(motion_annotation_list, dim=0).cpu().numpy() + motion_pred_np = torch.cat(motion_pred_list, dim=0).cpu().numpy() + if not force_mask and cal_mm: + motion_multimodality = torch.cat(motion_multimodality, dim=0).cpu().numpy() + multimodality = calculate_multimodality(motion_multimodality, 10) + gt_mu, gt_cov = calculate_activation_statistics(motion_annotation_np) + mu, cov = calculate_activation_statistics(motion_pred_np) + + diversity_real = calculate_diversity(motion_annotation_np, 300 if nb_sample > 300 else 100) + diversity = calculate_diversity(motion_pred_np, 300 if nb_sample > 300 else 100) + + R_precision_real = R_precision_real / nb_sample + R_precision = R_precision / nb_sample + + matching_score_real = matching_score_real / nb_sample + matching_score_pred = matching_score_pred / nb_sample + + fid = calculate_frechet_distance(gt_mu, gt_cov, mu, cov) + + msg = f"--> \t Eva. Repeat {repeat_id} :, FID. {fid:.4f}, " \ + f"Diversity Real. {diversity_real:.4f}, Diversity. {diversity:.4f}, " \ + f"R_precision_real. {R_precision_real}, R_precision. {R_precision}, " \ + f"matching_score_real. {matching_score_real:.4f}, matching_score_pred. {matching_score_pred:.4f}," \ + f"multimodality. {multimodality:.4f}" + print(msg) + return fid, diversity, R_precision, matching_score_pred, multimodality \ No newline at end of file diff --git a/utils/fixseed.py b/utils/fixseed.py new file mode 100644 index 0000000000000000000000000000000000000000..6f44f6ca263dcc410102a50970ce1b78405ba1f1 --- /dev/null +++ b/utils/fixseed.py @@ -0,0 +1,18 @@ +import numpy as np +import torch +import random + + +def fixseed(seed): + torch.backends.cudnn.benchmark = False + random.seed(seed) + np.random.seed(seed) + torch.manual_seed(seed) + + +# SEED = 10 +# EVALSEED = 0 +# # Provoc warning: not fully functionnal yet +# # torch.set_deterministic(True) +# torch.backends.cudnn.benchmark = False +# fixseed(SEED) diff --git a/utils/get_opt.py b/utils/get_opt.py new file mode 100644 index 0000000000000000000000000000000000000000..43eb9d4fe5d690f40b7fc088ae6d15886d6456c3 --- /dev/null +++ b/utils/get_opt.py @@ -0,0 +1,89 @@ +import os +from argparse import Namespace +import re +from os.path import join as pjoin +from utils.word_vectorizer import POS_enumerator + + +def is_float(numStr): + flag = False + numStr = str(numStr).strip().lstrip('-').lstrip('+') # εŽ»ι™€ζ­£ζ•°(+)γ€θ΄Ÿζ•°(-)符号 + try: + reg = re.compile(r'^[-+]?[0-9]+\.[0-9]+$') + res = reg.match(str(numStr)) + if res: + flag = True + except Exception as ex: + print("is_float() - error: " + str(ex)) + return flag + + +def is_number(numStr): + flag = False + numStr = str(numStr).strip().lstrip('-').lstrip('+') # εŽ»ι™€ζ­£ζ•°(+)γ€θ΄Ÿζ•°(-)符号 + if str(numStr).isdigit(): + flag = True + return flag + + +def get_opt(opt_path, device, **kwargs): + opt = Namespace() + opt_dict = vars(opt) + + skip = ('-------------- End ----------------', + '------------ Options -------------', + '\n') + print('Reading', opt_path) + with open(opt_path, 'r') as f: + for line in f: + if line.strip() not in skip: + # print(line.strip()) + key, value = line.strip('\n').split(': ') + if value in ('True', 'False'): + opt_dict[key] = (value == 'True') + # print(key, value) + elif is_float(value): + opt_dict[key] = float(value) + elif is_number(value): + opt_dict[key] = int(value) + else: + opt_dict[key] = str(value) + + # print(opt) + opt_dict['which_epoch'] = 'finest' + opt.save_root = pjoin(opt.checkpoints_dir, opt.dataset_name, opt.name) + opt.model_dir = pjoin(opt.save_root, 'model') + opt.meta_dir = pjoin(opt.save_root, 'meta') + + if opt.dataset_name == 't2m': + opt.data_root = './dataset/HumanML3D/' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.text_dir = pjoin(opt.data_root, 'texts') + opt.joints_num = 22 + opt.dim_pose = 263 + opt.max_motion_length = 196 + opt.max_motion_frame = 196 + opt.max_motion_token = 55 + elif opt.dataset_name == 'kit': + opt.data_root = './dataset/KIT-ML/' + opt.motion_dir = pjoin(opt.data_root, 'new_joint_vecs') + opt.text_dir = pjoin(opt.data_root, 'texts') + opt.joints_num = 21 + opt.dim_pose = 251 + opt.max_motion_length = 196 + opt.max_motion_frame = 196 + opt.max_motion_token = 55 + else: + raise KeyError('Dataset not recognized') + if not hasattr(opt, 'unit_length'): + opt.unit_length = 4 + opt.dim_word = 300 + opt.num_classes = 200 // opt.unit_length + opt.dim_pos_ohot = len(POS_enumerator) + opt.is_train = False + opt.is_continue = False + opt.device = device + + opt_dict.update(kwargs) # Overwrite with kwargs params + + return opt \ No newline at end of file diff --git a/utils/metrics.py b/utils/metrics.py new file mode 100644 index 0000000000000000000000000000000000000000..6975b3c5953918e690d1a72d9741bf05a77e29f1 --- /dev/null +++ b/utils/metrics.py @@ -0,0 +1,170 @@ +import numpy as np +from scipy import linalg +import torch + + +def calculate_mpjpe(gt_joints, pred_joints): + """ + gt_joints: num_poses x num_joints(22) x 3 + pred_joints: num_poses x num_joints(22) x 3 + (obtained from recover_from_ric()) + """ + assert gt_joints.shape == pred_joints.shape, f"GT shape: {gt_joints.shape}, pred shape: {pred_joints.shape}" + + # Align by root (pelvis) + pelvis = gt_joints[:, [0]].mean(1) + gt_joints = gt_joints - torch.unsqueeze(pelvis, dim=1) + pelvis = pred_joints[:, [0]].mean(1) + pred_joints = pred_joints - torch.unsqueeze(pelvis, dim=1) + + # Compute MPJPE + mpjpe = torch.linalg.norm(pred_joints - gt_joints, dim=-1) # num_poses x num_joints=22 + mpjpe_seq = mpjpe.mean(-1) # num_poses + + return mpjpe_seq + +# (X - X_train)*(X - X_train) = -2X*X_train + X*X + X_train*X_train +def euclidean_distance_matrix(matrix1, matrix2): + """ + Params: + -- matrix1: N1 x D + -- matrix2: N2 x D + Returns: + -- dist: N1 x N2 + dist[i, j] == distance(matrix1[i], matrix2[j]) + """ + assert matrix1.shape[1] == matrix2.shape[1] + d1 = -2 * np.dot(matrix1, matrix2.T) # shape (num_test, num_train) + d2 = np.sum(np.square(matrix1), axis=1, keepdims=True) # shape (num_test, 1) + d3 = np.sum(np.square(matrix2), axis=1) # shape (num_train, ) + dists = np.sqrt(d1 + d2 + d3) # broadcasting + return dists + +def calculate_top_k(mat, top_k): + size = mat.shape[0] + gt_mat = np.expand_dims(np.arange(size), 1).repeat(size, 1) + bool_mat = (mat == gt_mat) + correct_vec = False + top_k_list = [] + for i in range(top_k): +# print(correct_vec, bool_mat[:, i]) + correct_vec = (correct_vec | bool_mat[:, i]) + # print(correct_vec) + top_k_list.append(correct_vec[:, None]) + top_k_mat = np.concatenate(top_k_list, axis=1) + return top_k_mat + + +def calculate_R_precision(embedding1, embedding2, top_k, sum_all=False): + dist_mat = euclidean_distance_matrix(embedding1, embedding2) + argmax = np.argsort(dist_mat, axis=1) + top_k_mat = calculate_top_k(argmax, top_k) + if sum_all: + return top_k_mat.sum(axis=0) + else: + return top_k_mat + + +def calculate_matching_score(embedding1, embedding2, sum_all=False): + assert len(embedding1.shape) == 2 + assert embedding1.shape[0] == embedding2.shape[0] + assert embedding1.shape[1] == embedding2.shape[1] + + dist = linalg.norm(embedding1 - embedding2, axis=1) + if sum_all: + return dist.sum(axis=0) + else: + return dist + + + +def calculate_activation_statistics(activations): + """ + Params: + -- activation: num_samples x dim_feat + Returns: + -- mu: dim_feat + -- sigma: dim_feat x dim_feat + """ + mu = np.mean(activations, axis=0) + cov = np.cov(activations, rowvar=False) + return mu, cov + + +def calculate_diversity(activation, diversity_times): + assert len(activation.shape) == 2 + assert activation.shape[0] > diversity_times + num_samples = activation.shape[0] + + first_indices = np.random.choice(num_samples, diversity_times, replace=False) + second_indices = np.random.choice(num_samples, diversity_times, replace=False) + dist = linalg.norm(activation[first_indices] - activation[second_indices], axis=1) + return dist.mean() + + +def calculate_multimodality(activation, multimodality_times): + assert len(activation.shape) == 3 + assert activation.shape[1] > multimodality_times + num_per_sent = activation.shape[1] + + first_dices = np.random.choice(num_per_sent, multimodality_times, replace=False) + second_dices = np.random.choice(num_per_sent, multimodality_times, replace=False) + dist = linalg.norm(activation[:, first_dices] - activation[:, second_dices], axis=2) + return dist.mean() + + +def calculate_frechet_distance(mu1, sigma1, mu2, sigma2, eps=1e-6): + """Numpy implementation of the Frechet Distance. + The Frechet distance between two multivariate Gaussians X_1 ~ N(mu_1, C_1) + and X_2 ~ N(mu_2, C_2) is + d^2 = ||mu_1 - mu_2||^2 + Tr(C_1 + C_2 - 2*sqrt(C_1*C_2)). + Stable version by Dougal J. Sutherland. + Params: + -- mu1 : Numpy array containing the activations of a layer of the + inception net (like returned by the function 'get_predictions') + for generated samples. + -- mu2 : The sample mean over activations, precalculated on an + representative data set. + -- sigma1: The covariance matrix over activations for generated samples. + -- sigma2: The covariance matrix over activations, precalculated on an + representative data set. + Returns: + -- : The Frechet Distance. + """ + + mu1 = np.atleast_1d(mu1) + mu2 = np.atleast_1d(mu2) + + sigma1 = np.atleast_2d(sigma1) + sigma2 = np.atleast_2d(sigma2) + + assert mu1.shape == mu2.shape, \ + 'Training and test mean vectors have different lengths' + assert sigma1.shape == sigma2.shape, \ + 'Training and test covariances have different dimensions' + + diff = mu1 - mu2 + + # Product might be almost singular + covmean, _ = linalg.sqrtm(sigma1.dot(sigma2), disp=False) + if not np.isfinite(covmean).all(): + msg = ('fid calculation produces singular product; ' + 'adding %s to diagonal of cov estimates') % eps + print(msg) + offset = np.eye(sigma1.shape[0]) * eps + covmean = linalg.sqrtm((sigma1 + offset).dot(sigma2 + offset)) + + # Numerical error might give slight imaginary component + if np.iscomplexobj(covmean): + if not np.allclose(np.diagonal(covmean).imag, 0, atol=1e-3): + m = np.max(np.abs(covmean.imag)) + raise ValueError('Imaginary component {}'.format(m)) + covmean = covmean.real + + tr_covmean = np.trace(covmean) + + return (diff.dot(diff) + np.trace(sigma1) + + np.trace(sigma2) - 2 * tr_covmean) + + + diff --git a/utils/motion_process.py b/utils/motion_process.py new file mode 100644 index 0000000000000000000000000000000000000000..de330f89ba5da0503e5854909023adca53d80bf9 --- /dev/null +++ b/utils/motion_process.py @@ -0,0 +1,514 @@ +from os.path import join as pjoin + +from common.skeleton import Skeleton +import numpy as np +import os +from common.quaternion import * +from utils.paramUtil import * + +import torch + +# positions (batch, joint_num, 3) +def uniform_skeleton(positions, target_offset): + src_skel = Skeleton(n_raw_offsets, kinematic_chain, 'cpu') + src_offset = src_skel.get_offsets_joints(torch.from_numpy(positions[0])) + src_offset = src_offset.numpy() + tgt_offset = target_offset.numpy() + # print(src_offset) + # print(tgt_offset) + '''Calculate Scale Ratio as the ratio of legs''' + src_leg_len = np.abs(src_offset[l_idx1]).max() + np.abs(src_offset[l_idx2]).max() + tgt_leg_len = np.abs(tgt_offset[l_idx1]).max() + np.abs(tgt_offset[l_idx2]).max() + + scale_rt = tgt_leg_len / src_leg_len + # print(scale_rt) + src_root_pos = positions[:, 0] + tgt_root_pos = src_root_pos * scale_rt + + '''Inverse Kinematics''' + quat_params = src_skel.inverse_kinematics_np(positions, face_joint_indx) + # print(quat_params.shape) + + '''Forward Kinematics''' + src_skel.set_offset(target_offset) + new_joints = src_skel.forward_kinematics_np(quat_params, tgt_root_pos) + return new_joints + + +def extract_features(positions, feet_thre, n_raw_offsets, kinematic_chain, face_joint_indx, fid_r, fid_l): + global_positions = positions.copy() + """ Get Foot Contacts """ + + def foot_detect(positions, thres): + velfactor, heightfactor = np.array([thres, thres]), np.array([3.0, 2.0]) + + feet_l_x = (positions[1:, fid_l, 0] - positions[:-1, fid_l, 0]) ** 2 + feet_l_y = (positions[1:, fid_l, 1] - positions[:-1, fid_l, 1]) ** 2 + feet_l_z = (positions[1:, fid_l, 2] - positions[:-1, fid_l, 2]) ** 2 + # feet_l_h = positions[:-1,fid_l,1] + # feet_l = (((feet_l_x + feet_l_y + feet_l_z) < velfactor) & (feet_l_h < heightfactor)).astype(np.float) + feet_l = ((feet_l_x + feet_l_y + feet_l_z) < velfactor).astype(np.float) + + feet_r_x = (positions[1:, fid_r, 0] - positions[:-1, fid_r, 0]) ** 2 + feet_r_y = (positions[1:, fid_r, 1] - positions[:-1, fid_r, 1]) ** 2 + feet_r_z = (positions[1:, fid_r, 2] - positions[:-1, fid_r, 2]) ** 2 + # feet_r_h = positions[:-1,fid_r,1] + # feet_r = (((feet_r_x + feet_r_y + feet_r_z) < velfactor) & (feet_r_h < heightfactor)).astype(np.float) + feet_r = (((feet_r_x + feet_r_y + feet_r_z) < velfactor)).astype(np.float) + return feet_l, feet_r + + # + feet_l, feet_r = foot_detect(positions, feet_thre) + # feet_l, feet_r = foot_detect(positions, 0.002) + + '''Quaternion and Cartesian representation''' + r_rot = None + + def get_rifke(positions): + '''Local pose''' + positions[..., 0] -= positions[:, 0:1, 0] + positions[..., 2] -= positions[:, 0:1, 2] + '''All pose face Z+''' + positions = qrot_np(np.repeat(r_rot[:, None], positions.shape[1], axis=1), positions) + return positions + + def get_quaternion(positions): + skel = Skeleton(n_raw_offsets, kinematic_chain, "cpu") + # (seq_len, joints_num, 4) + quat_params = skel.inverse_kinematics_np(positions, face_joint_indx, smooth_forward=False) + + '''Fix Quaternion Discontinuity''' + quat_params = qfix(quat_params) + # (seq_len, 4) + r_rot = quat_params[:, 0].copy() + # print(r_rot[0]) + '''Root Linear Velocity''' + # (seq_len - 1, 3) + velocity = (positions[1:, 0] - positions[:-1, 0]).copy() + # print(r_rot.shape, velocity.shape) + velocity = qrot_np(r_rot[1:], velocity) + '''Root Angular Velocity''' + # (seq_len - 1, 4) + r_velocity = qmul_np(r_rot[1:], qinv_np(r_rot[:-1])) + quat_params[1:, 0] = r_velocity + # (seq_len, joints_num, 4) + return quat_params, r_velocity, velocity, r_rot + + def get_cont6d_params(positions): + skel = Skeleton(n_raw_offsets, kinematic_chain, "cpu") + # (seq_len, joints_num, 4) + quat_params = skel.inverse_kinematics_np(positions, face_joint_indx, smooth_forward=True) + + '''Quaternion to continuous 6D''' + cont_6d_params = quaternion_to_cont6d_np(quat_params) + # (seq_len, 4) + r_rot = quat_params[:, 0].copy() + # print(r_rot[0]) + '''Root Linear Velocity''' + # (seq_len - 1, 3) + velocity = (positions[1:, 0] - positions[:-1, 0]).copy() + # print(r_rot.shape, velocity.shape) + velocity = qrot_np(r_rot[1:], velocity) + '''Root Angular Velocity''' + # (seq_len - 1, 4) + r_velocity = qmul_np(r_rot[1:], qinv_np(r_rot[:-1])) + # (seq_len, joints_num, 4) + return cont_6d_params, r_velocity, velocity, r_rot + + cont_6d_params, r_velocity, velocity, r_rot = get_cont6d_params(positions) + positions = get_rifke(positions) + + # trejec = np.cumsum(np.concatenate([np.array([[0, 0, 0]]), velocity], axis=0), axis=0) + # r_rotations, r_pos = recover_ric_glo_np(r_velocity, velocity[:, [0, 2]]) + + # plt.plot(positions_b[:, 0, 0], positions_b[:, 0, 2], marker='*') + # plt.plot(ground_positions[:, 0, 0], ground_positions[:, 0, 2], marker='o', color='r') + # plt.plot(trejec[:, 0], trejec[:, 2], marker='^', color='g') + # plt.plot(r_pos[:, 0], r_pos[:, 2], marker='s', color='y') + # plt.xlabel('x') + # plt.ylabel('z') + # plt.axis('equal') + # plt.show() + + '''Root height''' + root_y = positions[:, 0, 1:2] + + '''Root rotation and linear velocity''' + # (seq_len-1, 1) rotation velocity along y-axis + # (seq_len-1, 2) linear velovity on xz plane + r_velocity = np.arcsin(r_velocity[:, 2:3]) + l_velocity = velocity[:, [0, 2]] + # print(r_velocity.shape, l_velocity.shape, root_y.shape) + root_data = np.concatenate([r_velocity, l_velocity, root_y[:-1]], axis=-1) + + '''Get Joint Rotation Representation''' + # (seq_len, (joints_num-1) *6) quaternion for skeleton joints + rot_data = cont_6d_params[:, 1:].reshape(len(cont_6d_params), -1) + + '''Get Joint Rotation Invariant Position Represention''' + # (seq_len, (joints_num-1)*3) local joint position + ric_data = positions[:, 1:].reshape(len(positions), -1) + + '''Get Joint Velocity Representation''' + # (seq_len-1, joints_num*3) + local_vel = qrot_np(np.repeat(r_rot[:-1, None], global_positions.shape[1], axis=1), + global_positions[1:] - global_positions[:-1]) + local_vel = local_vel.reshape(len(local_vel), -1) + + data = root_data + data = np.concatenate([data, ric_data[:-1]], axis=-1) + data = np.concatenate([data, rot_data[:-1]], axis=-1) + # print(data.shape, local_vel.shape) + data = np.concatenate([data, local_vel], axis=-1) + data = np.concatenate([data, feet_l, feet_r], axis=-1) + + return data + + +def process_file(positions, feet_thre): + # (seq_len, joints_num, 3) + # '''Down Sample''' + # positions = positions[::ds_num] + + '''Uniform Skeleton''' + positions = uniform_skeleton(positions, tgt_offsets) + + '''Put on Floor''' + floor_height = positions.min(axis=0).min(axis=0)[1] + positions[:, :, 1] -= floor_height + # print(floor_height) + + # plot_3d_motion("./positions_1.mp4", kinematic_chain, positions, 'title', fps=20) + + '''XZ at origin''' + root_pos_init = positions[0] + root_pose_init_xz = root_pos_init[0] * np.array([1, 0, 1]) + positions = positions - root_pose_init_xz + + # '''Move the first pose to origin ''' + # root_pos_init = positions[0] + # positions = positions - root_pos_init[0] + + '''All initially face Z+''' + r_hip, l_hip, sdr_r, sdr_l = face_joint_indx + across1 = root_pos_init[r_hip] - root_pos_init[l_hip] + across2 = root_pos_init[sdr_r] - root_pos_init[sdr_l] + across = across1 + across2 + across = across / np.sqrt((across ** 2).sum(axis=-1))[..., np.newaxis] + + # forward (3,), rotate around y-axis + forward_init = np.cross(np.array([[0, 1, 0]]), across, axis=-1) + # forward (3,) + forward_init = forward_init / np.sqrt((forward_init ** 2).sum(axis=-1))[..., np.newaxis] + + # print(forward_init) + + target = np.array([[0, 0, 1]]) + root_quat_init = qbetween_np(forward_init, target) + root_quat_init = np.ones(positions.shape[:-1] + (4,)) * root_quat_init + + positions_b = positions.copy() + + positions = qrot_np(root_quat_init, positions) + + # plot_3d_motion("./positions_2.mp4", kinematic_chain, positions, 'title', fps=20) + + '''New ground truth positions''' + global_positions = positions.copy() + + # plt.plot(positions_b[:, 0, 0], positions_b[:, 0, 2], marker='*') + # plt.plot(positions[:, 0, 0], positions[:, 0, 2], marker='o', color='r') + # plt.xlabel('x') + # plt.ylabel('z') + # plt.axis('equal') + # plt.show() + + """ Get Foot Contacts """ + + def foot_detect(positions, thres): + velfactor, heightfactor = np.array([thres, thres]), np.array([3.0, 2.0]) + + feet_l_x = (positions[1:, fid_l, 0] - positions[:-1, fid_l, 0]) ** 2 + feet_l_y = (positions[1:, fid_l, 1] - positions[:-1, fid_l, 1]) ** 2 + feet_l_z = (positions[1:, fid_l, 2] - positions[:-1, fid_l, 2]) ** 2 + # feet_l_h = positions[:-1,fid_l,1] + # feet_l = (((feet_l_x + feet_l_y + feet_l_z) < velfactor) & (feet_l_h < heightfactor)).astype(np.float) + feet_l = ((feet_l_x + feet_l_y + feet_l_z) < velfactor).astype(np.float) + + feet_r_x = (positions[1:, fid_r, 0] - positions[:-1, fid_r, 0]) ** 2 + feet_r_y = (positions[1:, fid_r, 1] - positions[:-1, fid_r, 1]) ** 2 + feet_r_z = (positions[1:, fid_r, 2] - positions[:-1, fid_r, 2]) ** 2 + # feet_r_h = positions[:-1,fid_r,1] + # feet_r = (((feet_r_x + feet_r_y + feet_r_z) < velfactor) & (feet_r_h < heightfactor)).astype(np.float) + feet_r = (((feet_r_x + feet_r_y + feet_r_z) < velfactor)).astype(np.float) + return feet_l, feet_r + # + feet_l, feet_r = foot_detect(positions, feet_thre) + # feet_l, feet_r = foot_detect(positions, 0.002) + + '''Quaternion and Cartesian representation''' + r_rot = None + + def get_rifke(positions): + '''Local pose''' + positions[..., 0] -= positions[:, 0:1, 0] + positions[..., 2] -= positions[:, 0:1, 2] + '''All pose face Z+''' + positions = qrot_np(np.repeat(r_rot[:, None], positions.shape[1], axis=1), positions) + return positions + + def get_quaternion(positions): + skel = Skeleton(n_raw_offsets, kinematic_chain, "cpu") + # (seq_len, joints_num, 4) + quat_params = skel.inverse_kinematics_np(positions, face_joint_indx, smooth_forward=False) + + '''Fix Quaternion Discontinuity''' + quat_params = qfix(quat_params) + # (seq_len, 4) + r_rot = quat_params[:, 0].copy() + # print(r_rot[0]) + '''Root Linear Velocity''' + # (seq_len - 1, 3) + velocity = (positions[1:, 0] - positions[:-1, 0]).copy() + # print(r_rot.shape, velocity.shape) + velocity = qrot_np(r_rot[1:], velocity) + '''Root Angular Velocity''' + # (seq_len - 1, 4) + r_velocity = qmul_np(r_rot[1:], qinv_np(r_rot[:-1])) + quat_params[1:, 0] = r_velocity + # (seq_len, joints_num, 4) + return quat_params, r_velocity, velocity, r_rot + + def get_cont6d_params(positions): + skel = Skeleton(n_raw_offsets, kinematic_chain, "cpu") + # (seq_len, joints_num, 4) + quat_params = skel.inverse_kinematics_np(positions, face_joint_indx, smooth_forward=True) + + '''Quaternion to continuous 6D''' + cont_6d_params = quaternion_to_cont6d_np(quat_params) + # (seq_len, 4) + r_rot = quat_params[:, 0].copy() + # print(r_rot[0]) + '''Root Linear Velocity''' + # (seq_len - 1, 3) + velocity = (positions[1:, 0] - positions[:-1, 0]).copy() + # print(r_rot.shape, velocity.shape) + velocity = qrot_np(r_rot[1:], velocity) + '''Root Angular Velocity''' + # (seq_len - 1, 4) + r_velocity = qmul_np(r_rot[1:], qinv_np(r_rot[:-1])) + # (seq_len, joints_num, 4) + return cont_6d_params, r_velocity, velocity, r_rot + + cont_6d_params, r_velocity, velocity, r_rot = get_cont6d_params(positions) + positions = get_rifke(positions) + + # trejec = np.cumsum(np.concatenate([np.array([[0, 0, 0]]), velocity], axis=0), axis=0) + # r_rotations, r_pos = recover_ric_glo_np(r_velocity, velocity[:, [0, 2]]) + + # plt.plot(positions_b[:, 0, 0], positions_b[:, 0, 2], marker='*') + # plt.plot(ground_positions[:, 0, 0], ground_positions[:, 0, 2], marker='o', color='r') + # plt.plot(trejec[:, 0], trejec[:, 2], marker='^', color='g') + # plt.plot(r_pos[:, 0], r_pos[:, 2], marker='s', color='y') + # plt.xlabel('x') + # plt.ylabel('z') + # plt.axis('equal') + # plt.show() + + '''Root height''' + root_y = positions[:, 0, 1:2] + + '''Root rotation and linear velocity''' + # (seq_len-1, 1) rotation velocity along y-axis + # (seq_len-1, 2) linear velovity on xz plane + r_velocity = np.arcsin(r_velocity[:, 2:3]) + l_velocity = velocity[:, [0, 2]] + # print(r_velocity.shape, l_velocity.shape, root_y.shape) + root_data = np.concatenate([r_velocity, l_velocity, root_y[:-1]], axis=-1) + + '''Get Joint Rotation Representation''' + # (seq_len, (joints_num-1) *6) quaternion for skeleton joints + rot_data = cont_6d_params[:, 1:].reshape(len(cont_6d_params), -1) + + '''Get Joint Rotation Invariant Position Represention''' + # (seq_len, (joints_num-1)*3) local joint position + ric_data = positions[:, 1:].reshape(len(positions), -1) + + '''Get Joint Velocity Representation''' + # (seq_len-1, joints_num*3) + local_vel = qrot_np(np.repeat(r_rot[:-1, None], global_positions.shape[1], axis=1), + global_positions[1:] - global_positions[:-1]) + local_vel = local_vel.reshape(len(local_vel), -1) + + data = root_data + data = np.concatenate([data, ric_data[:-1]], axis=-1) + data = np.concatenate([data, rot_data[:-1]], axis=-1) + # print(data.shape, local_vel.shape) + data = np.concatenate([data, local_vel], axis=-1) + data = np.concatenate([data, feet_l, feet_r], axis=-1) + + return data, global_positions, positions, l_velocity + + +# Recover global angle and positions for rotation data +# root_rot_velocity (B, seq_len, 1) +# root_linear_velocity (B, seq_len, 2) +# root_y (B, seq_len, 1) +# ric_data (B, seq_len, (joint_num - 1)*3) +# rot_data (B, seq_len, (joint_num - 1)*6) +# local_velocity (B, seq_len, joint_num*3) +# foot contact (B, seq_len, 4) +def recover_root_rot_pos(data): + rot_vel = data[..., 0] + r_rot_ang = torch.zeros_like(rot_vel).to(data.device) + '''Get Y-axis rotation from rotation velocity''' + r_rot_ang[..., 1:] = rot_vel[..., :-1] + r_rot_ang = torch.cumsum(r_rot_ang, dim=-1) + + r_rot_quat = torch.zeros(data.shape[:-1] + (4,)).to(data.device) + r_rot_quat[..., 0] = torch.cos(r_rot_ang) + r_rot_quat[..., 2] = torch.sin(r_rot_ang) + + r_pos = torch.zeros(data.shape[:-1] + (3,)).to(data.device) + r_pos[..., 1:, [0, 2]] = data[..., :-1, 1:3] + '''Add Y-axis rotation to root position''' + r_pos = qrot(qinv(r_rot_quat), r_pos) + + r_pos = torch.cumsum(r_pos, dim=-2) + + r_pos[..., 1] = data[..., 3] + return r_rot_quat, r_pos + + +def recover_from_rot(data, joints_num, skeleton): + r_rot_quat, r_pos = recover_root_rot_pos(data) + + r_rot_cont6d = quaternion_to_cont6d(r_rot_quat) + + start_indx = 1 + 2 + 1 + (joints_num - 1) * 3 + end_indx = start_indx + (joints_num - 1) * 6 + cont6d_params = data[..., start_indx:end_indx] + # print(r_rot_cont6d.shape, cont6d_params.shape, r_pos.shape) + cont6d_params = torch.cat([r_rot_cont6d, cont6d_params], dim=-1) + cont6d_params = cont6d_params.view(-1, joints_num, 6) + + positions = skeleton.forward_kinematics_cont6d(cont6d_params, r_pos) + + return positions + + +def recover_from_ric(data, joints_num): + r_rot_quat, r_pos = recover_root_rot_pos(data) + positions = data[..., 4:(joints_num - 1) * 3 + 4] + positions = positions.view(positions.shape[:-1] + (-1, 3)) + + '''Add Y-axis rotation to local joints''' + positions = qrot(qinv(r_rot_quat[..., None, :]).expand(positions.shape[:-1] + (4,)), positions) + + '''Add root XZ to joints''' + positions[..., 0] += r_pos[..., 0:1] + positions[..., 2] += r_pos[..., 2:3] + + '''Concate root and joints''' + positions = torch.cat([r_pos.unsqueeze(-2), positions], dim=-2) + + return positions +''' +For Text2Motion Dataset +''' +''' +if __name__ == "__main__": + example_id = "000021" + # Lower legs + l_idx1, l_idx2 = 5, 8 + # Right/Left foot + fid_r, fid_l = [8, 11], [7, 10] + # Face direction, r_hip, l_hip, sdr_r, sdr_l + face_joint_indx = [2, 1, 17, 16] + # l_hip, r_hip + r_hip, l_hip = 2, 1 + joints_num = 22 + # ds_num = 8 + data_dir = '../dataset/pose_data_raw/joints/' + save_dir1 = '../dataset/pose_data_raw/new_joints/' + save_dir2 = '../dataset/pose_data_raw/new_joint_vecs/' + + n_raw_offsets = torch.from_numpy(t2m_raw_offsets) + kinematic_chain = t2m_kinematic_chain + + # Get offsets of target skeleton + example_data = np.load(os.path.join(data_dir, example_id + '.npy')) + example_data = example_data.reshape(len(example_data), -1, 3) + example_data = torch.from_numpy(example_data) + tgt_skel = Skeleton(n_raw_offsets, kinematic_chain, 'cpu') + # (joints_num, 3) + tgt_offsets = tgt_skel.get_offsets_joints(example_data[0]) + # print(tgt_offsets) + + source_list = os.listdir(data_dir) + frame_num = 0 + for source_file in tqdm(source_list): + source_data = np.load(os.path.join(data_dir, source_file))[:, :joints_num] + try: + data, ground_positions, positions, l_velocity = process_file(source_data, 0.002) + rec_ric_data = recover_from_ric(torch.from_numpy(data).unsqueeze(0).float(), joints_num) + np.save(pjoin(save_dir1, source_file), rec_ric_data.squeeze().numpy()) + np.save(pjoin(save_dir2, source_file), data) + frame_num += data.shape[0] + except Exception as e: + print(source_file) + print(e) + + print('Total clips: %d, Frames: %d, Duration: %fm' % + (len(source_list), frame_num, frame_num / 20 / 60)) +''' + +if __name__ == "__main__": + example_id = "03950_gt" + # Lower legs + l_idx1, l_idx2 = 17, 18 + # Right/Left foot + fid_r, fid_l = [14, 15], [19, 20] + # Face direction, r_hip, l_hip, sdr_r, sdr_l + face_joint_indx = [11, 16, 5, 8] + # l_hip, r_hip + r_hip, l_hip = 11, 16 + joints_num = 21 + # ds_num = 8 + data_dir = '../dataset/kit_mocap_dataset/joints/' + save_dir1 = '../dataset/kit_mocap_dataset/new_joints/' + save_dir2 = '../dataset/kit_mocap_dataset/new_joint_vecs/' + + n_raw_offsets = torch.from_numpy(kit_raw_offsets) + kinematic_chain = kit_kinematic_chain + + '''Get offsets of target skeleton''' + example_data = np.load(os.path.join(data_dir, example_id + '.npy')) + example_data = example_data.reshape(len(example_data), -1, 3) + example_data = torch.from_numpy(example_data) + tgt_skel = Skeleton(n_raw_offsets, kinematic_chain, 'cpu') + # (joints_num, 3) + tgt_offsets = tgt_skel.get_offsets_joints(example_data[0]) + # print(tgt_offsets) + + source_list = os.listdir(data_dir) + frame_num = 0 + '''Read source data''' + for source_file in tqdm(source_list): + source_data = np.load(os.path.join(data_dir, source_file))[:, :joints_num] + try: + name = ''.join(source_file[:-7].split('_')) + '.npy' + data, ground_positions, positions, l_velocity = process_file(source_data, 0.05) + rec_ric_data = recover_from_ric(torch.from_numpy(data).unsqueeze(0).float(), joints_num) + if np.isnan(rec_ric_data.numpy()).any(): + print(source_file) + continue + np.save(pjoin(save_dir1, name), rec_ric_data.squeeze().numpy()) + np.save(pjoin(save_dir2, name), data) + frame_num += data.shape[0] + except Exception as e: + print(source_file) + print(e) + + print('Total clips: %d, Frames: %d, Duration: %fm' % + (len(source_list), frame_num, frame_num / 12.5 / 60)) \ No newline at end of file diff --git a/utils/paramUtil.py b/utils/paramUtil.py new file mode 100644 index 0000000000000000000000000000000000000000..a9f1708b85ca80a9051cb3675cec9b999a0d0e2b --- /dev/null +++ b/utils/paramUtil.py @@ -0,0 +1,63 @@ +import numpy as np + +# Define a kinematic tree for the skeletal struture +kit_kinematic_chain = [[0, 11, 12, 13, 14, 15], [0, 16, 17, 18, 19, 20], [0, 1, 2, 3, 4], [3, 5, 6, 7], [3, 8, 9, 10]] + +kit_raw_offsets = np.array( + [ + [0, 0, 0], + [0, 1, 0], + [0, 1, 0], + [0, 1, 0], + [0, 1, 0], + [1, 0, 0], + [0, -1, 0], + [0, -1, 0], + [-1, 0, 0], + [0, -1, 0], + [0, -1, 0], + [1, 0, 0], + [0, -1, 0], + [0, -1, 0], + [0, 0, 1], + [0, 0, 1], + [-1, 0, 0], + [0, -1, 0], + [0, -1, 0], + [0, 0, 1], + [0, 0, 1] + ] +) + +t2m_raw_offsets = np.array([[0,0,0], + [1,0,0], + [-1,0,0], + [0,1,0], + [0,-1,0], + [0,-1,0], + [0,1,0], + [0,-1,0], + [0,-1,0], + [0,1,0], + [0,0,1], + [0,0,1], + [0,1,0], + [1,0,0], + [-1,0,0], + [0,0,1], + [0,-1,0], + [0,-1,0], + [0,-1,0], + [0,-1,0], + [0,-1,0], + [0,-1,0]]) + +t2m_kinematic_chain = [[0, 2, 5, 8, 11], [0, 1, 4, 7, 10], [0, 3, 6, 9, 12, 15], [9, 14, 17, 19, 21], [9, 13, 16, 18, 20]] +t2m_left_hand_chain = [[20, 22, 23, 24], [20, 34, 35, 36], [20, 25, 26, 27], [20, 31, 32, 33], [20, 28, 29, 30]] +t2m_right_hand_chain = [[21, 43, 44, 45], [21, 46, 47, 48], [21, 40, 41, 42], [21, 37, 38, 39], [21, 49, 50, 51]] + + +kit_tgt_skel_id = '03950' + +t2m_tgt_skel_id = '000021' + diff --git a/utils/plot_script.py b/utils/plot_script.py new file mode 100644 index 0000000000000000000000000000000000000000..91b09d900740421b8db4332b3e0f029b39c115d5 --- /dev/null +++ b/utils/plot_script.py @@ -0,0 +1,548 @@ +import math +import numpy as np +import matplotlib +import matplotlib.pyplot as plt +from mpl_toolkits.mplot3d import Axes3D +from matplotlib.animation import FuncAnimation, FFMpegFileWriter +from mpl_toolkits.mplot3d.art3d import Poly3DCollection +import mpl_toolkits.mplot3d.axes3d as p3 + + +COLORS = [[255, 0, 0], [255, 85, 0], [255, 170, 0], [255, 255, 0], [170, 255, 0], [85, 255, 0], [0, 255, 0], + [0, 255, 85], [0, 255, 170], [0, 255, 255], [0, 170, 255], [0, 85, 255], [0, 0, 255], [85, 0, 255], + [170, 0, 255], [255, 0, 255], [255, 0, 170], [255, 0, 85]] + + +def plot_2d_pose(pose, pose_tree, class_type, save_path=None, excluded_joints=None): + def init(): + plt.xlabel('x') + plt.ylabel('y') + plt.title(class_type) + + fig = plt.figure() + init() + data = np.array(pose, dtype=float) + + if excluded_joints is None: + plt.scatter(data[:, 0], data[:, 1], color='b', marker='h', s=15) + else: + plot_joints = [i for i in range(data.shape[1]) if i not in excluded_joints] + plt.scatter(data[plot_joints, 0], data[plot_joints, 1], color='b', marker='h', s=15) + + for idx1, idx2 in pose_tree: + plt.plot([data[idx1, 0], data[idx2, 0]], + [data[idx1, 1], data[idx2, 1]], color='r', linewidth=2.0) + + # update(1) + # plt.show() + # Writer = writers['ffmpeg'] + # writer = Writer(fps=15, metadata={}) + if save_path is not None: + plt.savefig(save_path) + plt.show() + plt.close() + + +def list_cut_average(ll, intervals): + if intervals == 1: + return ll + + bins = math.ceil(len(ll) * 1.0 / intervals) + ll_new = [] + for i in range(bins): + l_low = intervals * i + l_high = l_low + intervals + l_high = l_high if l_high < len(ll) else len(ll) + ll_new.append(np.mean(ll[l_low:l_high])) + return ll_new + + +# def draw_pose_from_cords(img_mat_size, pose_2d, kinematic_tree, radius=2): +# img = np.zeros(shape=img_mat_size + (3,), dtype=np.uint8) +# lw = 2 +# pose = pose_2d.astype(np.int32) +# for i, (idx1, idx2) in enumerate(kinematic_tree): +# cv2.line(img, (pose[idx1, 0], pose[idx1, 1]), (pose[idx2, 0], pose[idx2, 1]), (255, 255, 255), lw) +# +# for i, uv in enumerate(pose_2d): +# point = tuple(uv.astype(np.int32)) +# cv2.circle(img, point, radius, COLORS[i % len(COLORS)], -1) +# return img + +def plot_3d_pose_v2(savePath, kinematic_tree, joints, title=None): + figure = plt.figure() + # ax = plt.axes(xlim=(-1, 1), ylim=(-1, 1), zlim=(-1, 1), projection='3d') + ax = Axes3D(figure) +# ax.set_ylim(-1, 1) +# ax.set_xlim(-1, 1) +# ax.set_zlim(-1, 1) + if title is not None: + ax.set_title(title) + ax.set_xlabel('x') + ax.set_ylabel('y') + ax.set_zlabel('z') + ax.view_init(elev=110, azim=90) + ax.scatter(joints[:, 0], joints[:, 1], joints[:, 2], color='black') + colors = ['red', 'magenta', 'black', 'magenta', 'black', 'green', 'blue'] + for chain, color in zip(kinematic_tree, colors): + ax.plot3D(joints[chain, 0], joints[chain, 1], joints[chain, 2], linewidth=2.0, color=color) +# ax.set_aspect(1) +# # plt.axis('off') +# ax.set_xticklabels([]) +# ax.set_yticklabels([]) +# ax.set_zticklabels([]) +# plt.savefig(savePath) + plt.show() + +def plot_3d_motion_v2(motion, kinematic_tree, save_path, interval=50, dataset=None, title=None): +# matplotlib.use('Agg') + + def init(): + ax.set_xlabel('x') + ax.set_ylabel('y') + ax.set_zlabel('z') + ax.set_ylim(0, 800) + ax.set_xlim(0, 800) + ax.set_zlim(0, 5000) + # ax.set_ylim(-0.75, 0.75) + # ax.set_xlim(-0.75, 0.75) + # ax.set_zlim(-0.75, 0.75) + if title is not None: + ax.set_title(title) + + motion = motion.reshape(motion.shape[0], -1, 3) + fig = plt.figure() + # ax = fig.add_subplot(111, projection='3d') + ax = p3.Axes3D(fig) + init() + + data = np.array(motion, dtype=float) + colors = ['red', 'magenta', 'black', 'green', 'blue','red', 'magenta', 'black', 'green', 'blue'] + frame_number = data.shape[0] + # dim (frame, joints, xyz) + print(data.shape) + + def update(index): + ax.lines = [] + ax.collections = [] + ax.view_init(elev=110, azim=-90) + ax.scatter(motion[index, :, 0], motion[index, :, 1], motion[index, :, 2], color='black') + for chain, color in zip(kinematic_tree, colors): + ax.plot3D(motion[index, chain, 0], motion[index, chain, 1], motion[index, chain, 2], linewidth=2.0, color=color) +# ax.set_aspect('equal') +# plt.axis('off') +# ax.set_xticklabels([]) +# ax.set_yticklabels([]) +# ax.set_zticklabels([]) + + ani = FuncAnimation(fig, update, frames=frame_number, interval=interval, repeat=True, repeat_delay=50) + # update(1) + # plt.show() + # Writer = writers['ffmpeg'] + # writer = Writer(fps=15, metadata={}) + ani.save(save_path, writer='pillow') + plt.close() + + +# radius = 10*offsets +def plot_3d_motion_kit(save_path, kinematic_tree, joints, title, figsize=(5, 5), interval=100, radius=246 * 12): + matplotlib.use('Agg') + + title_sp = title.split(' ') + if len(title_sp) > 10: + title = '\n'.join([' '.join(title_sp[:10]), ' '.join(title_sp[10:])]) + def init(): + ax.set_xlim3d([-radius / 2, radius / 2]) + ax.set_ylim3d([-radius / 2, radius / 2]) + ax.set_zlim3d([0, radius]) + # print(title) + fig.suptitle(title) + ax.grid(b=False) + + def plot_xzPlane(minx, maxx, miny, minz, maxz): + ## Plot a plane XZ + verts = [ + [minx, miny, minz], + [minx, miny, maxz], + [maxx, miny, maxz], + [maxx, miny, minz] + ] + xz_plane = Poly3DCollection([verts]) + xz_plane.set_facecolor((0.5, 0.5, 0.5, 0.5)) + ax.add_collection3d(xz_plane) + + # return ax + + # (seq_len, joints_num, 3) + data = joints.reshape(len(joints), -1, 3) + fig = plt.figure(figsize=figsize) + ax = p3.Axes3D(fig) + init() + MINS = data.min(axis=0).min(axis=0) + MAXS = data.max(axis=0).max(axis=0) + colors = ['red', 'magenta', 'black', 'green', 'blue', 'red', 'magenta', 'black', 'green', 'blue'] + frame_number = data.shape[0] + # print(data.shape) + + height_offset = MINS[1] + data[:, :, 1] -= height_offset + trajec = data[:, 0, [0, 2]] + + # print(trajec.shape) + + def update(index): + # print(index) + ax.lines = [] + ax.collections = [] + ax.view_init(elev=110, azim=-90) + ax.dist = 7.5 + # ax = + plot_xzPlane(MINS[0], MAXS[0], 0, MINS[2], MAXS[2]) + ax.scatter(data[index, :, 0], data[index, :, 1], data[index, :, 2], color='black') + for chain, color in zip(kinematic_tree, colors): + ax.plot3D(data[index, chain, 0], data[index, chain, 1], data[index, chain, 2], linewidth=2.0, color=color) + # print(trajec[:index, 0].shape) + if index > 1: + ax.plot3D(trajec[:index, 0], np.zeros_like(trajec[:index, 0]), trajec[:index, 1], linewidth=1.0, + color='blue') + # ax = plot_xzPlane(ax, MINS[0], MAXS[0], 0, MINS[2], MAXS[2]) + + plt.axis('off') + ax.set_xticklabels([]) + ax.set_yticklabels([]) + ax.set_zticklabels([]) + + ani = FuncAnimation(fig, update, frames=frame_number, interval=interval, repeat=True, repeat_delay=50) + + ani.save(save_path, writer='pillow') + plt.close() + +def plot_3d_motion_gt_pred(save_path, kinematic_tree, gt_joints, pred_joints, title, figsize=(10, 10), fps=120, radius=4): + matplotlib.use('Agg') + + title_sp = title.split(' ') + if len(title_sp) > 20: + title = '\n'.join([' '.join(title_sp[:10]), ' '.join(title_sp[10:20]), ' '.join(title_sp[20:])]) + elif len(title_sp) > 10: + title = '\n'.join([' '.join(title_sp[:10]), ' '.join(title_sp[10:])]) + + def init(): + for ax in axs: + ax.set_xlim3d([-radius / 2, radius / 2]) + ax.set_ylim3d([0, radius]) + ax.set_zlim3d([0, radius]) + fig.suptitle(title, fontsize=20) + ax.grid(b=False) + + def plot_xzPlane(minx, maxx, miny, minz, maxz, ax): + ## Plot a plane XZ + verts = [ + [minx, miny, minz], + [minx, miny, maxz], + [maxx, miny, maxz], + [maxx, miny, minz] + ] + xz_plane = Poly3DCollection([verts]) + xz_plane.set_facecolor((0.5, 0.5, 0.5, 0.5)) + ax.add_collection3d(xz_plane) + + # return ax + + def update(index): + for i, ax in enumerate(axs): + ax.lines = [] + ax.collections = [] + ax.view_init(elev=120, azim=-90) + ax.dist = 7.5 + + MINS = motions_min[i] + MAXS = motions_max[i] + trajec = motions_traj[i] + data = motions_data[i] + + plot_xzPlane(MINS[0] - trajec[index, 0], MAXS[0] - trajec[index, 0], 0, MINS[2] - trajec[index, 1], + MAXS[2] - trajec[index, 1], ax) + + if index > 1: + ax.plot3D(trajec[:index, 0] - trajec[index, 0], np.zeros_like(trajec[:index, 0]), + trajec[:index, 1] - trajec[index, 1], linewidth=1.0, + color='blue') + + for i, (chain, color) in enumerate(zip(kinematic_tree, colors)): + if i < 5: + linewidth = 4.0 + else: + linewidth = 2.0 + ax.plot3D(data[index, chain, 0], data[index, chain, 1], data[index, chain, 2], linewidth=linewidth, + color=color) + + plt.axis('off') + ax.set_xticklabels([]) + ax.set_yticklabels([]) + ax.set_zticklabels([]) + + # (seq_len, joints_num, 3) + + motions_data = [] + motions_traj = [] + motions_min = [] + motions_max = [] + colors = ['red', 'blue', 'black', 'red', 'blue', + 'darkblue', 'darkblue', 'darkblue', 'darkblue', 'darkblue', + 'darkred', 'darkred', 'darkred', 'darkred', 'darkred'] + for i, joints in enumerate((gt_joints, pred_joints)): + data = joints.copy().reshape(len(joints), -1, 3) + frame_number = data.shape[0] + + MINS = data.min(axis=0).min(axis=0) + motions_min.append(MINS) + MAXS = data.max(axis=0).max(axis=0) + motions_max.append(MAXS) + height_offset = MINS[1] + + data[:, :, 1] -= height_offset + trajec = data[:, 0, [0, 2]] + motions_traj.append(trajec) + + data[..., 0] -= data[:, 0:1, 0] + data[..., 2] -= data[:, 0:1, 2] + motions_data.append(data) + + axs = [] + fig = plt.figure(figsize=(20,10)) + axs.append(fig.add_subplot(1, 2, 1, projection='3d')) + axs.append(fig.add_subplot(1, 2, 2, projection='3d')) + init() + + ani = FuncAnimation(fig, update, frames=frame_number, interval=1000 / fps, repeat=False) + + # writer = FFMpegFileWriter(fps=fps) + ani.save(save_path, fps=fps) + plt.close() + +def plot_3d_motion(save_path, kinematic_tree, joints, title, figsize=(10, 10), fps=120, radius=4): + matplotlib.use('Agg') + + title_sp = title.split(' ') + if len(title_sp) > 20: + title = '\n'.join([' '.join(title_sp[:10]), ' '.join(title_sp[10:20]), ' '.join(title_sp[20:])]) + elif len(title_sp) > 10: + title = '\n'.join([' '.join(title_sp[:10]), ' '.join(title_sp[10:])]) + + def init(): + ax.set_xlim3d([-radius / 2, radius / 2]) + ax.set_ylim3d([0, radius]) + ax.set_zlim3d([0, radius]) + # print(title) + fig.suptitle(title, fontsize=20) + ax.grid(b=False) + + def plot_xzPlane(minx, maxx, miny, minz, maxz): + ## Plot a plane XZ + verts = [ + [minx, miny, minz], + [minx, miny, maxz], + [maxx, miny, maxz], + [maxx, miny, minz] + ] + xz_plane = Poly3DCollection([verts]) + xz_plane.set_facecolor((0.5, 0.5, 0.5, 0.5)) + ax.add_collection3d(xz_plane) + + # return ax + + # (seq_len, joints_num, 3) + data = joints.copy().reshape(len(joints), -1, 3) + fig = plt.figure(figsize=figsize) + ax = p3.Axes3D(fig) + init() + MINS = data.min(axis=0).min(axis=0) + MAXS = data.max(axis=0).max(axis=0) + colors = ['red', 'blue', 'black', 'red', 'blue', + 'darkblue', 'darkblue', 'darkblue', 'darkblue', 'darkblue', + 'darkred', 'darkred', 'darkred', 'darkred', 'darkred'] + frame_number = data.shape[0] + # print(data.shape) + + height_offset = MINS[1] + data[:, :, 1] -= height_offset + trajec = data[:, 0, [0, 2]] + + data[..., 0] -= data[:, 0:1, 0] + data[..., 2] -= data[:, 0:1, 2] + + # print(trajec.shape) + + def update(index): + # print(index) + ax.lines = [] + ax.collections = [] + ax.view_init(elev=120, azim=-90) + ax.dist = 7.5 + # ax = + plot_xzPlane(MINS[0] - trajec[index, 0], MAXS[0] - trajec[index, 0], 0, MINS[2] - trajec[index, 1], + MAXS[2] - trajec[index, 1]) + # ax.scatter(data[index, :22, 0], data[index, :22, 1], data[index, :22, 2], color='black', s=3) + + if index > 1: + ax.plot3D(trajec[:index, 0] - trajec[index, 0], np.zeros_like(trajec[:index, 0]), + trajec[:index, 1] - trajec[index, 1], linewidth=1.0, + color='blue') + # ax = plot_xzPlane(ax, MINS[0], MAXS[0], 0, MINS[2], MAXS[2]) + + for i, (chain, color) in enumerate(zip(kinematic_tree, colors)): + # print(color) + if i < 5: + linewidth = 4.0 + else: + linewidth = 2.0 + ax.plot3D(data[index, chain, 0], data[index, chain, 1], data[index, chain, 2], linewidth=linewidth, + color=color) + # print(trajec[:index, 0].shape) + + plt.axis('off') + ax.set_xticklabels([]) + ax.set_yticklabels([]) + ax.set_zticklabels([]) + + ani = FuncAnimation(fig, update, frames=frame_number, interval=1000 / fps, repeat=False) + + # writer = FFMpegFileWriter(fps=fps) + ani.save(save_path, fps=fps) + plt.close() + + +def plot_3d_motion_old(motion, pose_tree, class_type, save_path, interval=300, excluded_joints=None): + matplotlib.use('Agg') + + def init(): + ax.set_xlabel('x') + ax.set_ylabel('y') + ax.set_zlabel('z') + ax.set_ylim(-0.75, 0.75) + ax.set_xlim(-0.75, 0.75) + ax.set_zlim(-0.75, 0.75) + # ax.set_ylim(-1.0, 0.2) + # ax.set_xlim(-0.2, 1.0) + # ax.set_zlim(-1.0, 0.4) + ax.set_title(class_type) + + fig = plt.figure() + # ax = fig.add_subplot(111, projection='3d') + ax = p3.Axes3D(fig) + init() + + data = np.array(motion, dtype=float) + frame_number = data.shape[0] + # dim (frame, joints, xyz) + print(data.shape) + + def update(index): + ax.lines = [] + ax.collections = [] + if excluded_joints is None: + ax.scatter(data[index, :, 0], data[index, :, 1], data[index, :, 2], color='b', marker='h', s=15) + else: + plot_joints = [i for i in range(data.shape[1]) if i not in excluded_joints] + ax.scatter(data[index, plot_joints, 0], data[index, plot_joints, 1], data[index, plot_joints, 2], color='b', marker='h', s=15) + + for idx1, idx2 in pose_tree: + ax.plot([data[index, idx1, 0], data[index, idx2, 0]], + [data[index, idx1, 1], data[index, idx2, 1]], [data[index, idx1, 2], data[index, idx2, 2]], color='r', linewidth=2.0) + + ani = FuncAnimation(fig, update, frames=frame_number, interval=interval, repeat=False, repeat_delay=200) + # update(1) + # plt.show() + # Writer = writers['ffmpeg'] + # writer = Writer(fps=15, metadata={}) + ani.save(save_path, writer='pillow') + plt.close() + + +def plot_2d_motion(motion, pose_tree, axis_0, axis_1, class_type, save_path, interval=300): + matplotlib.use('Agg') + + fig = plt.figure() + plt.title(class_type) + # ax = fig.add_subplot(111, projection='3d') + data = np.array(motion, dtype=float) + frame_number = data.shape[0] + # dim (frame, joints, xyz) + print(data.shape) + + def update(index): + plt.clf() + plt.xlim(-0.7, 0.7) + plt.ylim(-0.7, 0.7) + plt.scatter(data[index, :, axis_0], data[index, :, axis_1], color='b', marker='h', s=15) + for idx1, idx2 in pose_tree: + plt.plot([data[index, idx1, axis_0], data[index, idx2, axis_0]], + [data[index, idx1, axis_1], data[index, idx2, axis_1]], color='r', linewidth=2.0) + + ani = FuncAnimation(fig, update, frames=frame_number, interval=interval, repeat=False, repeat_delay=200) + # update(1) + # plt.show() + # Writer = writers['ffmpeg'] + # writer = Writer(fps=15, metadata={}) + ani.save(save_path, writer='pillow') + plt.close() + +def plot_3d_multi_motion(motion_list, kinematic_tree, save_path, interval=50, dataset=None): + matplotlib.use('Agg') + + def init(): + ax.set_xlabel('x') + ax.set_ylabel('y') + ax.set_zlabel('z') + if dataset == "mocap": + ax.set_ylim(-1.5, 1.5) + ax.set_xlim(0, 3) + ax.set_zlim(-1.5, 1.5) + else: + ax.set_ylim(-1, 1) + ax.set_xlim(-1, 1) + ax.set_zlim(-1, 1) + # ax.set_ylim(-1.0, 0.2) + # ax.set_xlim(-0.2, 1.0) + # ax.set_zlim(-1.0, 0.4) + + fig = plt.figure() + # ax = fig.add_subplot(111, projection='3d') + ax = p3.Axes3D(fig) + init() + + colors = ['red', 'magenta', 'black', 'magenta', 'black', 'green', 'blue'] + frame_number = motion_list[0].shape[0] + # dim (frame, joints, xyz) + # print(data.shape) + print("Number of motions %d" % (len(motion_list))) + def update(index): + ax.lines = [] + ax.collections = [] + if dataset == "mocap": + ax.view_init(elev=110, azim=-90) + else: + ax.view_init(elev=110, azim=90) + for motion in motion_list: + for chain, color in zip(kinematic_tree, colors): + ax.plot3D(motion[index, chain, 0], motion[index, chain, 1], motion[index, chain, 2], + linewidth=4.0, color=color) + plt.axis('off') + +# ax.set_xticks([]) +# ax.set_yticks([]) + + ax.set_xticklabels([]) + ax.set_yticklabels([]) + ax.set_zticklabels([]) + + ani = FuncAnimation(fig, update, frames=frame_number, interval=interval, repeat=False, repeat_delay=200) + # update(1) + # plt.show() + # Writer = writers['ffmpeg'] + # writer = Writer(fps=15, metadata={}) + ani.save(save_path, writer='pillow') + plt.close() + + + diff --git a/utils/utils.py b/utils/utils.py new file mode 100644 index 0000000000000000000000000000000000000000..648cdb827308fe949fe2bfa580f6d5a49ec81078 --- /dev/null +++ b/utils/utils.py @@ -0,0 +1,168 @@ +import os +import numpy as np +# import cv2 +from PIL import Image +from utils import paramUtil +import math +import time +import matplotlib.pyplot as plt +# from scipy.ndimage import gaussian_filter + + +def mkdir(path): + if not os.path.exists(path): + os.makedirs(path) + +COLORS = [[255, 0, 0], [255, 85, 0], [255, 170, 0], [255, 255, 0], [170, 255, 0], [85, 255, 0], [0, 255, 0], + [0, 255, 85], [0, 255, 170], [0, 255, 255], [0, 170, 255], [0, 85, 255], [0, 0, 255], [85, 0, 255], + [170, 0, 255], [255, 0, 255], [255, 0, 170], [255, 0, 85]] + +MISSING_VALUE = -1 + +def save_image(image_numpy, image_path): + img_pil = Image.fromarray(image_numpy) + img_pil.save(image_path) + + +def save_logfile(log_loss, save_path): + with open(save_path, 'wt') as f: + for k, v in log_loss.items(): + w_line = k + for digit in v: + w_line += ' %.3f' % digit + f.write(w_line + '\n') + + +def print_current_loss(start_time, niter_state, total_niters, losses, epoch=None, sub_epoch=None, + inner_iter=None, tf_ratio=None, sl_steps=None): + + def as_minutes(s): + m = math.floor(s / 60) + s -= m * 60 + return '%dm %ds' % (m, s) + + def time_since(since, percent): + now = time.time() + s = now - since + es = s / percent + rs = es - s + return '%s (- %s)' % (as_minutes(s), as_minutes(rs)) + + if epoch is not None: + print('ep/it:%2d-%4d niter:%6d' % (epoch, inner_iter, niter_state), end=" ") + + message = ' %s completed:%3d%%)' % (time_since(start_time, niter_state / total_niters), niter_state / total_niters * 100) + # now = time.time() + # message += '%s'%(as_minutes(now - start_time)) + + + for k, v in losses.items(): + message += ' %s: %.4f ' % (k, v) + # message += ' sl_length:%2d tf_ratio:%.2f'%(sl_steps, tf_ratio) + print(message) + +def print_current_loss_decomp(start_time, niter_state, total_niters, losses, epoch=None, inner_iter=None): + + def as_minutes(s): + m = math.floor(s / 60) + s -= m * 60 + return '%dm %ds' % (m, s) + + def time_since(since, percent): + now = time.time() + s = now - since + es = s / percent + rs = es - s + return '%s (- %s)' % (as_minutes(s), as_minutes(rs)) + + print('epoch: %03d inner_iter: %5d' % (epoch, inner_iter), end=" ") + # now = time.time() + message = '%s niter: %07d completed: %3d%%)'%(time_since(start_time, niter_state / total_niters), niter_state, niter_state / total_niters * 100) + for k, v in losses.items(): + message += ' %s: %.4f ' % (k, v) + print(message) + + +def compose_gif_img_list(img_list, fp_out, duration): + img, *imgs = [Image.fromarray(np.array(image)) for image in img_list] + img.save(fp=fp_out, format='GIF', append_images=imgs, optimize=False, + save_all=True, loop=0, duration=duration) + + +def save_images(visuals, image_path): + if not os.path.exists(image_path): + os.makedirs(image_path) + + for i, (label, img_numpy) in enumerate(visuals.items()): + img_name = '%d_%s.jpg' % (i, label) + save_path = os.path.join(image_path, img_name) + save_image(img_numpy, save_path) + + +def save_images_test(visuals, image_path, from_name, to_name): + if not os.path.exists(image_path): + os.makedirs(image_path) + + for i, (label, img_numpy) in enumerate(visuals.items()): + img_name = "%s_%s_%s" % (from_name, to_name, label) + save_path = os.path.join(image_path, img_name) + save_image(img_numpy, save_path) + + +def compose_and_save_img(img_list, save_dir, img_name, col=4, row=1, img_size=(256, 200)): + # print(col, row) + compose_img = compose_image(img_list, col, row, img_size) + if not os.path.exists(save_dir): + os.makedirs(save_dir) + img_path = os.path.join(save_dir, img_name) + # print(img_path) + compose_img.save(img_path) + + +def compose_image(img_list, col, row, img_size): + to_image = Image.new('RGB', (col * img_size[0], row * img_size[1])) + for y in range(0, row): + for x in range(0, col): + from_img = Image.fromarray(img_list[y * col + x]) + # print((x * img_size[0], y*img_size[1], + # (x + 1) * img_size[0], (y + 1) * img_size[1])) + paste_area = (x * img_size[0], y*img_size[1], + (x + 1) * img_size[0], (y + 1) * img_size[1]) + to_image.paste(from_img, paste_area) + # to_image[y*img_size[1]:(y + 1) * img_size[1], x * img_size[0] :(x + 1) * img_size[0]] = from_img + return to_image + + +def plot_loss_curve(losses, save_path, intervals=500): + plt.figure(figsize=(10, 5)) + plt.title("Loss During Training") + for key in losses.keys(): + plt.plot(list_cut_average(losses[key], intervals), label=key) + plt.xlabel("Iterations/" + str(intervals)) + plt.ylabel("Loss") + plt.legend() + plt.savefig(save_path) + plt.show() + + +def list_cut_average(ll, intervals): + if intervals == 1: + return ll + + bins = math.ceil(len(ll) * 1.0 / intervals) + ll_new = [] + for i in range(bins): + l_low = intervals * i + l_high = l_low + intervals + l_high = l_high if l_high < len(ll) else len(ll) + ll_new.append(np.mean(ll[l_low:l_high])) + return ll_new + + +# def motion_temporal_filter(motion, sigma=1): +# motion = motion.reshape(motion.shape[0], -1) +# # print(motion.shape) +# for i in range(motion.shape[1]): +# motion[:, i] = gaussian_filter(motion[:, i], sigma=sigma, mode="nearest") +# return motion.reshape(motion.shape[0], -1, 3) + diff --git a/utils/word_vectorizer.py b/utils/word_vectorizer.py new file mode 100644 index 0000000000000000000000000000000000000000..557ff97a9539c084167f3eca51fb50f53f33c8ea --- /dev/null +++ b/utils/word_vectorizer.py @@ -0,0 +1,99 @@ +import numpy as np +import pickle +from os.path import join as pjoin + +POS_enumerator = { + 'VERB': 0, + 'NOUN': 1, + 'DET': 2, + 'ADP': 3, + 'NUM': 4, + 'AUX': 5, + 'PRON': 6, + 'ADJ': 7, + 'ADV': 8, + 'Loc_VIP': 9, + 'Body_VIP': 10, + 'Obj_VIP': 11, + 'Act_VIP': 12, + 'Desc_VIP': 13, + 'OTHER': 14, +} + +Loc_list = ('left', 'right', 'clockwise', 'counterclockwise', 'anticlockwise', 'forward', 'back', 'backward', + 'up', 'down', 'straight', 'curve') + +Body_list = ('arm', 'chin', 'foot', 'feet', 'face', 'hand', 'mouth', 'leg', 'waist', 'eye', 'knee', 'shoulder', 'thigh') + +Obj_List = ('stair', 'dumbbell', 'chair', 'window', 'floor', 'car', 'ball', 'handrail', 'baseball', 'basketball') + +Act_list = ('walk', 'run', 'swing', 'pick', 'bring', 'kick', 'put', 'squat', 'throw', 'hop', 'dance', 'jump', 'turn', + 'stumble', 'dance', 'stop', 'sit', 'lift', 'lower', 'raise', 'wash', 'stand', 'kneel', 'stroll', + 'rub', 'bend', 'balance', 'flap', 'jog', 'shuffle', 'lean', 'rotate', 'spin', 'spread', 'climb') + +Desc_list = ('slowly', 'carefully', 'fast', 'careful', 'slow', 'quickly', 'happy', 'angry', 'sad', 'happily', + 'angrily', 'sadly') + +VIP_dict = { + 'Loc_VIP': Loc_list, + 'Body_VIP': Body_list, + 'Obj_VIP': Obj_List, + 'Act_VIP': Act_list, + 'Desc_VIP': Desc_list, +} + + +class WordVectorizer(object): + def __init__(self, meta_root, prefix): + vectors = np.load(pjoin(meta_root, '%s_data.npy'%prefix)) + words = pickle.load(open(pjoin(meta_root, '%s_words.pkl'%prefix), 'rb')) + self.word2idx = pickle.load(open(pjoin(meta_root, '%s_idx.pkl'%prefix), 'rb')) + self.word2vec = {w: vectors[self.word2idx[w]] for w in words} + + def _get_pos_ohot(self, pos): + pos_vec = np.zeros(len(POS_enumerator)) + if pos in POS_enumerator: + pos_vec[POS_enumerator[pos]] = 1 + else: + pos_vec[POS_enumerator['OTHER']] = 1 + return pos_vec + + def __len__(self): + return len(self.word2vec) + + def __getitem__(self, item): + word, pos = item.split('/') + if word in self.word2vec: + word_vec = self.word2vec[word] + vip_pos = None + for key, values in VIP_dict.items(): + if word in values: + vip_pos = key + break + if vip_pos is not None: + pos_vec = self._get_pos_ohot(vip_pos) + else: + pos_vec = self._get_pos_ohot(pos) + else: + word_vec = self.word2vec['unk'] + pos_vec = self._get_pos_ohot('OTHER') + return word_vec, pos_vec + + +class WordVectorizerV2(WordVectorizer): + def __init__(self, meta_root, prefix): + super(WordVectorizerV2, self).__init__(meta_root, prefix) + self.idx2word = {self.word2idx[w]: w for w in self.word2idx} + + def __getitem__(self, item): + word_vec, pose_vec = super(WordVectorizerV2, self).__getitem__(item) + word, pos = item.split('/') + if word in self.word2vec: + return word_vec, pose_vec, self.word2idx[word] + else: + return word_vec, pose_vec, self.word2idx['unk'] + + def itos(self, idx): + if idx == len(self.idx2word): + return "pad" + return self.idx2word[idx] \ No newline at end of file diff --git a/visualization/.DS_Store b/visualization/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..104c0682bd62734a070b60d56d308b92af7f2df6 Binary files /dev/null and b/visualization/.DS_Store differ diff --git a/visualization/.bvh b/visualization/.bvh new file mode 100644 index 0000000000000000000000000000000000000000..b4d4a27110baa7a9a2c45d7b6f7eedbfffa9f6ec --- /dev/null +++ b/visualization/.bvh @@ -0,0 +1,864 @@ +HIERARCHY +ROOT Pelvis +{ + OFFSET -0.179506 -22.333345 2.821913 + CHANNELS 6 Xposition Yposition Zposition Zrotation Yrotation Xrotation + JOINT Left_hip + { + OFFSET 6.951974 -9.140623 -0.681533 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_knee + { + OFFSET 3.427654 -37.519855 -0.449580 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_ankle + { + OFFSET -1.359570 -39.796059 -4.369333 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_foot + { + OFFSET 2.635814 -5.579078 11.928840 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + JOINT Right_hip + { + OFFSET -6.767048 -9.052170 -0.431982 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_knee + { + OFFSET -3.829005 -38.256897 -0.885003 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_ankle + { + OFFSET 1.577377 -39.841461 -4.231180 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_foot + { + OFFSET -2.537174 -4.814398 12.334795 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + JOINT Spine1 + { + OFFSET -0.253288 10.896323 -2.669631 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Spine2 + { + OFFSET 0.548704 13.518043 0.109247 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Spine3 + { + OFFSET 0.145701 5.292222 2.542457 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Neck + { + OFFSET -0.277840 21.387037 -4.285703 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Head + { + OFFSET 0.515184 6.496960 5.134897 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + JOINT Left_collar + { + OFFSET 7.884473 12.174932 -3.408961 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_shoulder + { + OFFSET 9.097692 3.046888 -0.886815 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_elbow + { + OFFSET 25.961220 -1.277207 -2.745643 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_wrist + { + OFFSET 24.923361 0.898606 -0.117091 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Left_palm + { + OFFSET 8.404213 -0.816156 -1.494537 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + } + JOINT Right_collar + { + OFFSET -8.175920 11.883285 -3.861528 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_shoulder + { + OFFSET -9.601238 3.255117 -0.914307 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_elbow + { + OFFSET -25.374195 -1.332924 -2.140099 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_wrist + { + OFFSET -25.529810 0.777228 -0.555919 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Right_palm + { + OFFSET -8.462191 -0.611722 -1.031508 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + } + } + } + } +} +MOTION +Frames: 720 +Frame Time: 0.016667 +-15.953562 158.261215 3.012963 -6.548568 2.583855 -18.484306 2.567626 -0.642801 -12.453255 -17.111603 3.336555 16.983561 -0.646515 0.385496 -0.056215 0.325094 -0.032605 0.189901 11.448563 8.871870 6.436031 21.109348 -6.065577 45.020580 -0.174829 0.026075 0.116341 0.072238 0.260225 0.053027 4.465475 2.398752 11.553416 -5.916316 5.109896 9.693657 -10.230002 5.977373 8.161955 -4.592945 0.456784 10.607079 11.999027 -6.871897 -9.583961 0.986580 11.602270 -6.802592 -10.811317 -2.869949 -1.570219 43.446667 -20.007170 -7.731044 0.092445 -0.321820 0.690197 -0.099926 -0.000055 0.179611 0.794326 -2.761873 -4.701620 6.150688 4.680287 -2.319729 -7.082062 6.923985 -0.347780 -0.400098 0.244321 -0.323698 0.385978 0.072713 -0.159744 +-16.108706 158.342819 3.003159 -6.436900 2.553235 -18.466497 2.628736 -0.640951 -12.167108 -17.277838 3.260565 16.452961 -0.623134 0.361270 -0.052679 0.329175 -0.021943 0.188075 11.625759 8.663714 6.621767 20.507597 -5.825788 44.947929 -0.176207 0.037369 0.118593 0.068431 0.250536 0.048086 4.242087 2.434052 12.115721 -6.077591 5.185571 9.527125 -10.338363 5.937043 7.690588 -4.605536 0.197104 10.837864 12.726488 -7.272390 -9.544734 1.642845 11.950652 -6.932811 -11.680576 -4.277152 -1.549070 43.571354 -20.612377 -8.049021 0.109730 -0.311815 0.682838 -0.110624 0.006377 0.183225 0.926398 -3.272447 -4.630198 7.445030 3.782560 -2.564028 -8.259988 8.206085 -0.503641 -0.385034 0.241649 -0.309882 0.376944 0.060723 -0.150942 +-16.289064 158.460114 2.898096 -6.337712 2.417876 -18.367199 2.387673 -0.769141 -11.783619 -16.808804 2.974704 15.581153 -0.597874 0.341984 -0.045163 0.336606 -0.010386 0.182390 11.895297 8.444583 6.677911 19.618019 -5.451431 44.845573 -0.181456 0.041560 0.120532 0.063814 0.249287 0.050308 4.130446 2.249803 12.813165 -6.341510 5.110845 9.366212 -10.591797 5.717437 7.166194 -4.550250 0.315001 10.694882 13.649382 -7.465281 -9.502808 2.140804 12.233712 -6.924524 -12.244494 -5.059723 -1.525820 43.379272 -21.237177 -8.295979 0.124976 -0.288952 0.674843 -0.118383 0.010494 0.193642 1.297063 -3.571788 -4.703934 8.010023 3.486611 -2.652901 -8.476348 8.605403 -0.545584 -0.372898 0.231243 -0.293915 0.365742 0.049422 -0.138878 +-16.564602 158.731995 2.726458 -6.002626 2.455181 -17.973370 1.834383 -0.983811 -11.526038 -15.971136 2.528754 14.111326 -0.602751 0.340437 -0.036803 0.336285 -0.008456 0.180600 11.654990 8.101241 6.587115 18.879175 -5.168495 44.240204 -0.184101 0.051312 0.135291 0.064663 0.260571 0.042015 3.051892 2.191581 13.253531 -6.533848 4.771447 9.180534 -10.291628 5.312028 6.718891 -4.273476 0.849475 10.492126 14.207470 -6.976998 -9.746916 2.845061 11.944734 -6.652175 -13.332726 -5.224829 -1.703026 43.879097 -20.990297 -8.364495 0.124505 -0.311719 0.688117 -0.116233 0.012790 0.202472 1.603163 -3.485494 -4.864434 8.750508 3.673903 -2.785898 -8.287816 8.146102 -0.511701 -0.381603 0.246283 -0.306233 0.384884 0.045592 -0.141288 +-16.712265 159.061188 2.544503 -6.138146 2.120839 -17.193476 1.495634 -1.153967 -11.531704 -14.562866 2.010199 12.596170 -0.564200 0.317475 -0.030186 0.355434 0.019825 0.183202 11.821760 7.832906 6.029297 17.854931 -4.734118 43.749580 -0.192897 0.046537 0.137743 0.063975 0.252156 0.061209 2.591154 2.105130 12.956139 -6.259222 4.452549 8.945457 -9.745981 4.985147 6.536089 -4.571469 1.506478 10.368932 14.273899 -6.712031 -9.471840 3.448703 11.540046 -6.184101 -15.225222 -5.342481 -1.930704 43.757050 -21.041569 -8.442200 0.134142 -0.275313 0.666342 -0.116295 0.025142 0.214703 1.627102 -3.484644 -5.032462 9.050708 4.006345 -2.802380 -8.178758 7.832633 -0.502845 -0.366619 0.222956 -0.270694 0.358248 0.025778 -0.124002 +-16.738913 159.395050 2.409832 -6.371427 1.715281 -16.212042 1.344112 -1.182214 -11.552453 -13.644547 1.596031 10.760131 -0.553557 0.301520 -0.029561 0.378947 0.055993 0.190589 11.912018 7.518050 5.477684 17.113008 -4.432878 43.021950 -0.200891 0.036620 0.141589 0.080178 0.245286 0.068790 2.655632 1.979555 12.242448 -6.059598 4.245433 8.709062 -9.529772 4.797668 6.568608 -4.468900 1.918368 10.300252 13.968842 -6.223287 -9.409180 3.466537 11.571606 -6.341009 -16.185760 -6.324979 -1.868305 43.140266 -21.341555 -8.512464 0.137919 -0.253948 0.652056 -0.111901 0.031955 0.226485 1.538267 -4.164848 -5.698076 9.921809 4.595060 -2.894332 -8.263926 7.278342 -0.511822 -0.369502 0.201231 -0.253245 0.348287 0.008170 -0.117610 +-16.776548 159.748032 2.157786 -6.428220 0.974121 -15.499296 0.936812 -1.201844 -11.313258 -12.177716 1.160200 8.771048 -0.541815 0.290366 -0.027408 0.385098 0.072718 0.195796 11.659352 7.261486 5.164932 16.596523 -4.206794 42.218369 -0.209730 0.039482 0.143880 0.082221 0.241970 0.075982 2.573596 1.944514 12.080869 -5.894100 4.092123 8.473337 -9.288622 4.620084 6.356588 -4.217100 2.342363 10.327727 13.891860 -5.639298 -9.494050 3.559528 11.211238 -6.158870 -16.793213 -6.551462 -1.894842 42.277451 -21.691759 -8.545035 0.136256 -0.254222 0.648655 -0.109668 0.045148 0.229905 1.508747 -4.268039 -5.966607 10.860933 4.783715 -3.082765 -8.835072 6.579336 -0.500989 -0.366672 0.202077 -0.242371 0.346106 -0.000085 -0.113156 +-16.773758 159.985733 1.840756 -6.892040 -0.265036 -14.707372 1.328187 -0.964429 -11.259574 -11.177370 0.888995 6.940612 -0.568827 0.312146 -0.017006 0.384319 0.065389 0.219003 11.855839 7.198880 4.539358 16.104712 -3.967600 41.788979 -0.207010 0.039457 0.152789 0.090576 0.252497 0.064945 2.552962 2.114229 11.497072 -5.267292 4.029208 8.392828 -8.548087 4.680492 6.497765 -3.776544 2.099114 10.020322 12.838959 -5.162495 -9.682754 2.628662 11.070118 -6.654572 -17.138351 -7.377963 -1.785861 42.147392 -22.057623 -8.732569 0.117987 -0.294817 0.657766 -0.096000 0.038727 0.228189 1.382665 -4.553769 -6.347175 11.398166 5.195314 -3.140609 -8.480102 5.291673 -0.409761 -0.384078 0.213121 -0.268936 0.375780 -0.002055 -0.129671 +-16.773798 160.242065 1.385337 -7.016428 -1.505329 -14.080323 1.266081 -0.892498 -11.216756 -9.875610 0.647913 5.458475 -0.596244 0.324718 -0.036018 0.380901 0.056116 0.246956 11.449362 7.158514 3.991309 15.985287 -3.963041 41.578953 -0.208718 0.038813 0.142284 0.092089 0.233258 0.069335 2.184994 2.446226 11.041884 -4.768640 4.030961 8.394737 -7.787795 4.783552 6.747200 -2.993406 1.860639 10.339728 11.743679 -4.358018 -9.782350 2.318040 10.238366 -6.903628 -17.624683 -8.450515 -1.814095 41.897972 -21.614748 -8.678004 0.099946 -0.314608 0.672528 -0.091236 0.046330 0.203243 0.738849 -4.534195 -6.355844 13.447996 5.103255 -3.444934 -9.040357 4.058734 -0.338981 -0.394386 0.223943 -0.279044 0.371005 0.006839 -0.155564 +-16.809313 160.425140 0.933804 -7.032182 -2.290404 -13.168996 0.963916 -0.950240 -11.661660 -8.774489 0.446624 4.215530 -0.591520 0.324756 -0.038110 0.405520 0.077245 0.283295 11.117752 6.917726 3.290086 15.538538 -3.851339 41.050232 -0.220738 0.015278 0.131980 0.102497 0.209776 0.094493 1.436988 2.649358 10.414960 -4.232882 3.861250 8.380134 -6.796241 4.627924 7.040365 -2.038058 1.271019 9.802289 10.280865 -3.758888 -9.653845 1.583092 9.638629 -7.427457 -17.063530 -9.797557 -1.697351 40.920959 -21.239902 -8.413903 0.092666 -0.282492 0.658618 -0.081128 0.057634 0.202768 0.736511 -4.848399 -6.580435 14.807322 5.148545 -3.579633 -9.770852 4.246374 -0.421145 -0.396556 0.186414 -0.259444 0.338819 -0.013721 -0.165114 +-16.789700 160.592651 0.367741 -7.171580 -3.178783 -12.647384 0.967041 -0.922395 -11.908892 -7.793193 0.286271 3.119777 -0.577536 0.297129 -0.039632 0.452639 0.135876 0.330994 10.758710 6.621087 2.877956 15.536983 -3.949389 40.555130 -0.244916 0.003562 0.132633 0.125324 0.175011 0.115623 1.386160 2.668587 9.904191 -3.783525 3.787306 8.664775 -6.183028 4.540397 7.717748 -1.120352 1.032352 9.925644 8.940594 -2.772691 -9.750923 0.745054 8.419509 -7.993518 -16.237057 -11.405189 -1.721316 39.923317 -20.612867 -8.124463 0.100576 -0.256890 0.647661 -0.077922 0.087036 0.213942 0.813248 -4.988221 -6.677959 16.553080 5.027795 -3.795870 -11.128160 5.261421 -0.631432 -0.398122 0.151377 -0.228331 0.311798 -0.055161 -0.170009 +-16.741749 160.729294 -0.316900 -7.558708 -4.539864 -12.112906 1.386975 -0.769382 -12.272948 -6.737583 0.165605 2.225166 -0.576300 0.265689 -0.056850 0.509184 0.216077 0.371496 11.096457 6.453204 2.496656 14.883972 -3.657289 40.090054 -0.270425 -0.000597 0.123822 0.166345 0.140374 0.129843 1.571359 2.641582 9.193312 -3.330585 3.747882 9.214892 -5.608980 4.529363 8.885200 -0.731368 1.462196 9.633437 8.470182 -1.802790 -10.920446 0.051031 7.202787 -8.527828 -15.546686 -12.708365 -1.861073 39.913399 -20.185949 -8.141868 0.112741 -0.227957 0.639310 -0.085768 0.116664 0.220135 2.036472 -4.811833 -7.356366 16.969507 5.912110 -3.819465 -11.867729 5.299818 -0.755479 -0.403036 0.124151 -0.197492 0.296620 -0.087526 -0.170286 +-16.553652 160.764511 -1.042054 -7.925178 -5.998769 -11.598991 1.845736 -0.696072 -12.929962 -5.726211 0.092250 2.030888 -0.569470 0.269086 -0.064483 0.529535 0.244756 0.386711 11.167949 6.396535 1.932726 14.707852 -3.614619 39.896099 -0.281741 -0.023981 0.115069 0.179399 0.131774 0.161120 1.726923 2.839438 8.667390 -2.650086 3.818988 9.649557 -4.748201 4.631983 9.787368 -0.131880 1.360343 9.359412 7.636412 -1.246999 -11.012045 -1.206931 5.552031 -9.087198 -14.850809 -14.288842 -1.986183 40.316353 -20.254745 -8.431984 0.094950 -0.196905 0.620114 -0.070309 0.128415 0.221138 3.140409 -4.329516 -7.363596 16.994743 6.043010 -3.810810 -12.448504 6.366045 -0.970701 -0.409567 0.097504 -0.171583 0.272599 -0.095192 -0.167232 +-16.352150 160.888748 -1.785974 -8.061885 -7.845345 -11.192497 2.414356 -0.553609 -13.384150 -4.966199 0.047758 1.862995 -0.564971 0.259399 -0.069010 0.559372 0.295034 0.402097 10.879979 6.500432 1.349209 14.677989 -3.608514 39.977642 -0.297743 -0.033641 0.114398 0.203599 0.126196 0.178321 2.030623 3.112092 8.190439 -2.180508 4.059436 10.116151 -4.206339 4.850182 10.759787 0.209076 1.335603 9.352204 7.140994 -0.794189 -11.571316 -2.253699 3.974662 -9.873274 -14.183203 -16.453354 -2.139265 40.883957 -20.160650 -8.718738 0.085774 -0.183659 0.604347 -0.061338 0.144865 0.229600 4.736768 -3.786916 -7.713704 17.506262 6.563680 -3.926220 -13.609794 7.310733 -1.246494 -0.419190 0.083070 -0.148184 0.271298 -0.108919 -0.158972 +-16.086176 160.952591 -2.683252 -8.046998 -9.908904 -10.881722 3.178403 -0.502334 -14.330916 -4.741286 0.060714 2.819452 -0.555648 0.238704 -0.085571 0.582981 0.340153 0.427670 10.591507 6.828996 0.462272 14.245204 -3.450773 40.673283 -0.309660 -0.039848 0.105944 0.222041 0.096309 0.195670 2.300500 3.250377 8.068968 -1.867627 4.212889 10.539503 -3.831827 4.921741 11.586883 0.605016 1.225105 9.274499 5.971914 -0.082918 -12.144478 -3.228095 2.257882 -10.338022 -12.876457 -17.771721 -2.434823 41.225170 -19.998362 -8.844715 0.078872 -0.166713 0.585088 -0.057407 0.167470 0.220838 5.875173 -2.771969 -7.843284 18.682720 7.382069 -4.064976 -14.685915 9.481850 -1.764936 -0.417760 0.068578 -0.117976 0.250361 -0.122834 -0.158966 +-15.819700 160.804840 -3.482929 -7.975517 -12.322988 -10.388718 4.410126 -0.496662 -16.022293 -5.157393 0.167969 5.244440 -0.579617 0.243325 -0.095244 0.608477 0.373700 0.450725 10.490107 7.335312 -0.667436 13.604923 -3.189647 41.799717 -0.313874 -0.043234 0.106417 0.251317 0.093546 0.192373 2.630287 3.390921 7.611517 -1.650590 4.381994 10.853812 -3.557493 5.043419 12.445291 0.630615 1.692654 9.087181 5.536309 0.514806 -12.791163 -3.279937 1.171122 -10.690102 -12.859802 -19.157557 -2.569380 41.454315 -19.932009 -9.059175 0.069723 -0.175345 0.584963 -0.051675 0.169156 0.220703 6.833838 -1.895792 -8.632036 19.644712 9.359219 -4.074486 -15.135581 9.993315 -2.034602 -0.435857 0.065232 -0.122267 0.265944 -0.129340 -0.167343 +-15.525534 160.693253 -4.243557 -7.904150 -14.910521 -9.976284 6.132611 -0.396099 -17.974174 -6.482966 0.442776 8.747579 -0.607337 0.263478 -0.093182 0.624604 0.389966 0.463768 10.625152 7.725592 -1.360209 12.235993 -2.568690 42.515491 -0.318295 -0.057561 0.101954 0.279279 0.105677 0.188364 3.059854 3.420854 7.726108 -1.554179 4.566720 10.980680 -3.558352 5.161422 12.777025 0.538786 2.560840 8.562731 5.153638 1.251932 -13.002645 -3.437396 0.448450 -11.197196 -12.642103 -20.749588 -2.599976 41.375114 -19.952688 -9.183331 0.061028 -0.179509 0.588692 -0.042495 0.163473 0.231345 8.093701 -1.192280 -9.645938 20.499111 11.572705 -4.045588 -15.529764 10.370626 -2.277901 -0.452976 0.052024 -0.142714 0.285838 -0.135389 -0.174425 +-15.208327 160.648315 -5.178411 -7.567080 -17.146141 -10.049934 8.152706 -0.344608 -20.190386 -8.707283 1.042604 13.983326 -0.615083 0.277083 -0.103284 0.639628 0.414488 0.466801 10.462480 7.969729 -1.951233 11.097867 -2.149283 43.216347 -0.323782 -0.070184 0.094681 0.297566 0.114381 0.205735 3.036006 3.326841 8.200000 -1.485536 4.555881 11.291413 -3.447955 5.101433 13.248490 0.252534 3.551512 8.317461 5.070338 1.925607 -13.335642 -3.601868 -0.670601 -11.612844 -12.342030 -22.204805 -2.806740 42.235493 -19.971783 -9.538338 0.040605 -0.167086 0.578094 -0.030262 0.165803 0.231062 9.817141 -0.125658 -10.633718 20.723526 13.895201 -3.950775 -15.358629 10.303440 -2.375078 -0.464874 0.044683 -0.132438 0.287497 -0.129146 -0.169719 +-14.876552 160.664368 -6.072125 -7.386243 -19.553471 -10.331503 10.622969 -0.118184 -22.140608 -11.675226 2.077783 19.915577 -0.634292 0.271717 -0.123380 0.676542 0.458746 0.491102 10.640180 8.157366 -2.223415 9.724277 -1.597904 43.703949 -0.343389 -0.068934 0.086461 0.325110 0.094941 0.217119 3.201195 3.166709 9.122756 -1.395641 4.617937 11.632595 -3.419672 5.162120 13.598430 -0.601054 4.760435 8.004275 4.673171 2.721645 -14.529936 -3.788130 -1.876887 -11.856270 -12.363192 -23.442291 -2.995182 43.647419 -21.224220 -10.523670 0.046908 -0.158676 0.591816 -0.040620 0.186445 0.232800 11.626849 0.905302 -11.395967 20.860348 15.695547 -3.925965 -15.010798 10.483617 -2.454436 -0.477184 0.041214 -0.122190 0.288444 -0.137025 -0.175816 +-14.380869 160.812134 -6.984997 -6.752759 -21.915737 -10.967949 12.350435 -0.150520 -23.741671 -14.259523 3.365441 25.961500 -0.678074 0.287212 -0.137323 0.690565 0.467266 0.517168 10.132088 8.252432 -2.336057 8.676771 -1.232475 44.009972 -0.347024 -0.061635 0.087100 0.345248 0.089695 0.206591 2.914943 3.179664 10.192928 -1.256652 4.672759 12.059586 -3.178120 5.233828 13.956268 -0.853625 5.446908 7.955490 4.222835 3.458758 -15.352881 -4.715968 -3.841550 -12.430705 -11.510841 -25.186232 -3.382696 44.712788 -21.933510 -11.247051 0.039736 -0.191908 0.619013 -0.042147 0.189061 0.224734 13.512440 2.369993 -11.666486 20.429726 17.129457 -3.930598 -14.336025 11.806147 -2.659317 -0.500018 0.058389 -0.146900 0.313396 -0.133684 -0.199465 +-13.789561 160.985413 -7.765205 -5.823012 -24.055769 -11.668018 13.779216 -0.294715 -25.182566 -16.967180 4.977308 31.880217 -0.714081 0.310344 -0.143757 0.693127 0.461524 0.529300 9.403065 8.282658 -2.397833 7.210505 -0.694751 44.228523 -0.354469 -0.063269 0.080190 0.356486 0.095099 0.204466 2.438852 3.261651 10.994482 -1.147426 4.692928 12.445843 -2.880855 5.274017 14.316557 -0.927538 6.005843 8.148997 3.969277 4.118996 -15.678823 -5.316980 -5.580879 -12.721301 -11.133784 -26.776617 -3.605953 45.565617 -24.253584 -12.633064 0.031767 -0.214452 0.645872 -0.041343 0.191638 0.222985 14.898627 3.831013 -11.785723 20.248457 18.586010 -3.900503 -13.525084 13.505468 -2.873523 -0.516495 0.068957 -0.173095 0.332979 -0.126529 -0.215806 +-13.086726 161.216568 -8.485121 -4.875965 -25.981440 -12.199566 15.083968 -0.514531 -26.784744 -19.957155 6.923659 37.548882 -0.696912 0.291710 -0.163743 0.726395 0.490140 0.574809 8.477742 8.146724 -2.492680 5.551526 -0.122520 43.949738 -0.380759 -0.072170 0.057762 0.357321 0.044334 0.242526 2.158102 3.111463 11.672981 -1.094743 4.592554 12.783085 -2.704907 5.140908 14.687515 -0.885196 6.413784 8.514328 2.674360 5.196745 -15.926392 -5.635658 -7.048832 -12.588388 -11.202438 -27.804913 -3.808431 46.915981 -27.456287 -14.557017 0.040479 -0.164475 0.645094 -0.051680 0.226000 0.213113 15.019759 5.338651 -11.741925 21.237589 20.218506 -3.618650 -12.086660 15.796215 -3.075075 -0.504326 0.037830 -0.132508 0.277114 -0.146613 -0.227494 +-12.456934 161.513885 -9.119720 -3.793108 -27.912590 -12.866165 16.083836 -0.745651 -27.852245 -22.382816 8.920979 42.601986 -0.718903 0.294819 -0.176465 0.746321 0.501490 0.619812 7.491395 7.949832 -2.409604 3.972824 0.429350 43.304806 -0.394515 -0.062772 0.052734 0.364812 0.020979 0.248542 1.629811 3.106494 12.275188 -1.131571 4.522753 13.153068 -2.561482 5.073355 15.087170 -0.799961 6.805485 8.702858 1.749366 6.156599 -16.791067 -5.698677 -8.449005 -12.665860 -11.313059 -29.085314 -3.926397 47.764103 -31.461718 -16.861189 0.037331 -0.182031 0.668726 -0.057050 0.244585 0.200352 15.449378 7.066398 -11.848394 22.377285 22.042166 -3.412206 -10.939917 17.745220 -3.241103 -0.512922 0.047209 -0.136056 0.277517 -0.154058 -0.251574 +-11.800477 161.971481 -9.755994 -2.591225 -29.314501 -13.581259 16.482523 -1.302634 -28.535030 -24.110374 10.683502 47.065063 -0.736296 0.261939 -0.213807 0.795541 0.563422 0.675948 6.338984 7.540351 -2.273709 2.772543 0.743658 42.251862 -0.422817 -0.045223 0.036012 0.396663 -0.039910 0.254975 0.778419 3.097676 12.655063 -1.149864 4.316111 13.703722 -2.193244 4.838350 15.886477 -0.761904 7.446394 9.015975 0.933794 7.305212 -18.504755 -5.104967 -10.050616 -12.855439 -12.143413 -30.883242 -4.121560 49.404926 -34.883862 -19.457796 0.056960 -0.174758 0.689441 -0.083203 0.286455 0.185384 15.945306 8.780711 -12.205355 23.646778 24.080421 -3.216335 -10.003852 20.238850 -3.506859 -0.516217 0.046552 -0.115759 0.261439 -0.175445 -0.273750 +-11.098733 162.471466 -10.325916 -1.339180 -31.126358 -13.841406 16.718086 -1.643628 -28.929125 -25.513557 12.321860 50.518543 -0.757916 0.253705 -0.245401 0.835283 0.611165 0.711364 5.128810 7.305420 -2.759619 1.290884 1.174620 41.272972 -0.452961 -0.043838 0.024794 0.418304 -0.071846 0.282597 0.033580 3.332775 12.349244 -1.225869 4.260793 14.080084 -1.894949 4.776854 16.723743 -0.553547 7.925304 9.409863 0.367788 8.212152 -20.010220 -3.718606 -11.724162 -12.963178 -13.988247 -33.032402 -3.971232 50.071518 -38.298206 -21.960804 0.056370 -0.167856 0.713036 -0.092219 0.323943 0.179229 15.872032 10.391656 -12.292434 25.809473 25.670246 -2.896585 -9.064837 22.811100 -3.769757 -0.532793 0.050022 -0.095163 0.250130 -0.181549 -0.286184 +-10.435786 162.991608 -10.710837 -0.340732 -33.205326 -13.578669 17.083504 -1.833149 -29.206976 -26.589983 13.897703 53.715229 -0.750196 0.241307 -0.253408 0.863857 0.651652 0.735837 4.311136 7.021362 -3.433456 -0.456643 1.696122 39.838036 -0.473439 -0.051012 0.014963 0.434047 -0.087968 0.303216 -0.223134 3.382552 11.446911 -1.400740 4.257839 14.186185 -1.932330 4.763020 17.431128 -0.462293 8.599119 10.001927 -0.113684 9.099281 -20.279131 -2.714864 -13.559663 -13.001805 -16.253441 -35.308578 -3.677524 50.599213 -40.458481 -23.806383 0.056001 -0.147974 0.707228 -0.091238 0.347422 0.183218 16.279284 11.652099 -12.259357 28.209742 26.976212 -2.448616 -7.462887 26.771383 -4.023708 -0.531461 0.033484 -0.071842 0.235322 -0.198041 -0.283387 +-9.826798 163.554047 -10.991090 0.095756 -34.932892 -12.928908 17.427895 -2.150764 -29.353802 -26.683149 14.960142 56.886841 -0.775600 0.247563 -0.266523 0.883510 0.678218 0.748740 3.784520 6.614614 -4.137233 -1.790574 1.957662 37.979965 -0.477766 -0.066562 0.013452 0.461028 -0.090299 0.304044 -0.407725 3.278637 10.209656 -1.420716 4.060065 14.271961 -1.720481 4.602381 18.262276 -0.373787 9.429996 10.366678 -0.548301 10.009103 -20.323969 -1.789331 -15.031480 -12.958756 -19.087252 -37.659576 -2.932446 52.041370 -43.372192 -26.582546 0.045365 -0.143714 0.707814 -0.080395 0.347199 0.186579 16.690390 12.616516 -12.644693 30.147425 28.905918 -1.605877 -4.369041 29.553823 -3.560164 -0.552401 0.020006 -0.078770 0.239218 -0.202314 -0.293935 +-9.188797 164.157013 -11.226430 0.575041 -36.718918 -12.161089 17.424295 -2.511493 -29.285671 -26.184809 15.767151 60.096672 -0.797658 0.267854 -0.271517 0.892794 0.684860 0.776970 3.201453 6.249115 -5.004308 -2.994241 2.138109 36.112057 -0.481794 -0.083401 0.002949 0.477859 -0.092093 0.310422 -0.648649 3.246926 8.861405 -1.392490 3.866477 14.333423 -1.413709 4.428638 19.104046 -0.103472 9.798611 10.709154 -1.598368 10.882658 -20.192261 -1.001857 -16.252991 -13.005049 -21.506372 -40.416660 -1.777879 51.999561 -46.621296 -28.735558 0.023997 -0.147788 0.705759 -0.064154 0.347950 0.181424 16.538864 13.521867 -13.129786 32.457268 31.055237 -0.443250 -1.188440 31.425295 -2.842073 -0.564919 0.006470 -0.089682 0.240732 -0.206360 -0.309598 +-8.547242 164.780991 -11.443678 1.149869 -38.550419 -11.313907 16.880774 -2.879326 -28.938185 -25.122160 16.001858 62.530167 -0.800713 0.277662 -0.269268 0.916811 0.714510 0.797108 2.501112 5.940675 -6.077391 -4.076771 2.259006 34.245506 -0.493576 -0.108549 0.004034 0.497184 -0.087258 0.332298 -0.720109 3.121574 7.480189 -1.547512 3.663750 14.362247 -1.480661 4.174148 19.906746 0.302679 10.420553 10.867702 -2.370678 11.809701 -20.080130 0.080329 -17.179731 -12.855272 -23.805977 -42.529972 -0.519510 52.495544 -50.011547 -31.235239 0.005652 -0.132177 0.693393 -0.041967 0.356078 0.195625 16.178818 14.208493 -13.697104 35.824646 33.236565 1.004251 1.353943 33.600208 -2.300271 -0.579396 -0.019572 -0.080469 0.234431 -0.222485 -0.309392 +-7.848021 165.301025 -11.619472 1.207361 -40.712685 -9.825318 16.680843 -2.806930 -28.324362 -24.440128 16.056738 63.384495 -0.809462 0.299104 -0.257650 0.937312 0.742363 0.820825 2.239747 5.904922 -7.614280 -4.972218 2.391983 32.895176 -0.493000 -0.150027 0.012597 0.524501 -0.069347 0.347535 -0.265043 2.983308 5.719175 -1.626428 3.519567 14.301897 -1.620521 3.922987 20.849640 0.737091 11.077666 10.400050 -3.793144 12.827089 -19.545074 1.880812 -17.590981 -12.729789 -26.810213 -44.778999 1.364611 51.941055 -52.983013 -32.928169 -0.031328 -0.121367 0.661322 0.001801 0.346610 0.211794 15.189126 14.529465 -14.530971 39.804871 35.688026 3.097610 3.818692 35.366108 -1.687046 -0.603707 -0.059245 -0.080730 0.234790 -0.242066 -0.312148 +-7.218434 165.737732 -11.819319 1.385782 -42.416286 -8.287569 16.030611 -2.871326 -27.688341 -23.520807 15.715948 63.505116 -0.816973 0.334522 -0.244307 0.918547 0.731033 0.812317 1.770311 5.845553 -9.166382 -5.213834 2.293669 31.509369 -0.465045 -0.197759 0.024919 0.536055 -0.029868 0.349608 -0.226790 2.996415 3.967878 -1.667355 3.354706 14.080020 -1.546612 3.628032 21.509533 1.374760 11.638236 9.989178 -4.807969 13.829537 -18.186932 3.542742 -17.832680 -12.688412 -30.009165 -47.536533 4.054867 49.613194 -55.754639 -33.152542 -0.088418 -0.114964 0.612616 0.060944 0.308567 0.215652 14.385589 14.381516 -15.278356 44.007767 37.964916 5.674764 6.515521 37.070274 -0.834909 -0.626331 -0.091569 -0.096701 0.237112 -0.237776 -0.313776 +-6.489751 166.176529 -12.054281 1.130265 -44.115372 -6.712142 15.345182 -2.838210 -26.461418 -22.331165 14.909662 62.758747 -0.841119 0.368879 -0.252606 0.925117 0.741987 0.825588 1.790442 5.890166 -10.511384 -5.616301 2.297547 30.119736 -0.455930 -0.249934 0.017280 0.560090 -0.013790 0.371284 0.169494 2.961426 2.498317 -1.640429 3.221840 14.007882 -1.540515 3.396683 22.322811 2.146389 12.141342 9.480089 -5.753473 14.751775 -17.673609 4.438820 -18.124252 -12.933593 -33.573544 -50.742359 7.278052 46.982243 -57.752182 -32.590134 -0.139609 -0.092477 0.581458 0.107911 0.289127 0.209973 13.425660 14.140767 -16.370064 47.970409 40.470715 8.781833 9.949854 38.282684 0.500140 -0.655403 -0.131579 -0.099691 0.222140 -0.234597 -0.324209 +-5.869152 166.619370 -12.287939 0.943071 -45.379837 -5.602497 14.113273 -2.820513 -24.223135 -20.786242 13.536302 60.696419 -0.859730 0.397450 -0.247367 0.932780 0.759700 0.837800 2.014765 5.937261 -11.284970 -6.085701 2.381442 28.709223 -0.454839 -0.281371 0.015891 0.588520 0.009324 0.379726 0.527073 2.901817 1.245380 -1.638134 3.063291 14.126240 -1.628127 3.101448 23.195272 2.950866 12.442166 9.319098 -6.279268 15.430611 -17.397217 5.542769 -18.514566 -13.119287 -36.356892 -53.352074 10.368772 44.535427 -59.931213 -32.017178 -0.176244 -0.095668 0.560239 0.143774 0.281906 0.220318 11.997142 14.337797 -17.430725 51.889919 42.790203 12.079476 13.062656 39.001709 1.774395 -0.677188 -0.153680 -0.112580 0.235886 -0.241941 -0.325845 +-5.330501 167.043243 -12.490552 0.990812 -45.974033 -4.750149 12.411217 -2.871249 -21.573986 -18.896820 11.765480 57.618347 -0.887348 0.422795 -0.257062 0.940096 0.778581 0.861149 1.785346 5.759792 -11.596251 -5.834585 2.168309 26.426180 -0.446658 -0.318423 0.009561 0.618595 0.014775 0.388418 0.441593 2.873629 -0.103128 -1.561562 2.784042 14.372162 -1.410620 2.633698 24.328606 3.489204 12.555588 8.856671 -7.603151 16.014280 -17.478388 7.586046 -18.413704 -13.385505 -40.309376 -55.989292 14.399580 42.882065 -62.046642 -31.940090 -0.222067 -0.095247 0.531140 0.183188 0.270392 0.210737 10.866857 14.158597 -18.542252 56.235340 44.844139 15.544897 15.105147 40.132389 2.681415 -0.703506 -0.179786 -0.119619 0.235530 -0.243374 -0.338900 +-4.806040 167.217438 -12.524003 1.067987 -46.165146 -3.752481 10.301759 -2.922394 -19.107533 -16.376680 9.702046 54.235184 -0.921379 0.473185 -0.256851 0.918703 0.760504 0.852552 1.150216 5.573877 -11.928140 -4.950298 1.803252 24.475002 -0.424977 -0.365920 0.012501 0.632206 0.051694 0.397874 0.642000 2.780384 -1.415163 -1.532778 2.485471 14.412150 -1.429190 2.160666 25.085745 3.981361 12.783957 8.131550 -8.602957 16.508448 -17.115501 9.339681 -18.554905 -13.560049 -44.180595 -58.379166 18.957266 40.880371 -64.374359 -31.448904 -0.286232 -0.103685 0.503654 0.238155 0.237844 0.203281 10.254326 13.675895 -19.172379 60.629196 46.249130 18.838848 15.949635 41.748264 3.152300 -0.739694 -0.196867 -0.143546 0.244974 -0.222852 -0.349205 +-4.390038 167.089661 -12.528413 1.001006 -45.875393 -2.444858 8.380536 -2.904169 -16.533070 -13.964335 7.628642 49.627232 -0.939751 0.546710 -0.238290 0.874880 0.705128 0.829222 0.590914 5.385997 -12.298265 -3.988642 1.445380 22.669090 -0.396043 -0.415146 0.015164 0.622019 0.114329 0.417053 0.537711 2.648932 -2.827901 -1.372797 2.059048 14.222775 -1.103769 1.555918 25.482716 4.664692 12.824980 7.398415 -9.081342 16.854027 -16.197807 11.205435 -18.278149 -13.618406 -49.798798 -60.747002 25.021957 39.232407 -65.726738 -30.701593 -0.363890 -0.110333 0.471449 0.301735 0.192670 0.195906 9.617601 12.529979 -19.236971 64.963943 47.001232 22.184855 17.124798 45.165901 4.042819 -0.767472 -0.210164 -0.170605 0.254291 -0.189595 -0.352268 +-3.883516 166.887329 -12.402857 -0.051792 -45.021545 -0.811618 6.972673 -2.898533 -13.583907 -11.232874 5.433945 44.436188 -0.947751 0.593338 -0.225656 0.858661 0.677015 0.822131 0.704947 5.046429 -11.901040 -3.123290 1.088188 20.078775 -0.379908 -0.453130 0.015702 0.619103 0.149058 0.435917 1.769720 2.184735 -4.041565 -1.098175 1.514576 14.195010 -1.159758 0.891981 26.017015 5.077238 12.591658 6.953607 -9.457038 16.804754 -15.542446 12.277021 -18.676941 -13.749967 -55.035603 -62.946720 31.018974 36.727680 -66.060059 -28.745161 -0.408735 -0.099008 0.446163 0.341721 0.164727 0.196604 8.671971 11.541602 -18.997971 68.022797 47.576248 24.943020 17.899282 49.754269 5.004252 -0.784801 -0.233018 -0.180115 0.250543 -0.176821 -0.352987 +-3.377771 166.582535 -12.285482 -1.644150 -45.003338 1.184331 6.261551 -2.294415 -9.887939 -8.866342 3.690083 37.367271 -0.964685 0.627722 -0.227996 0.859038 0.670105 0.837439 1.428151 4.887099 -11.612030 -2.767780 0.915274 17.491590 -0.377034 -0.487039 0.002939 0.627601 0.157720 0.458584 3.198275 1.851826 -5.349900 -0.718613 1.082784 14.195268 -1.134445 0.412229 26.654737 5.591552 12.342720 6.582157 -10.255214 16.826820 -15.509573 13.337549 -19.134537 -14.107331 -61.931351 -64.535240 37.758808 32.681770 -65.366150 -25.521833 -0.444237 -0.087423 0.430981 0.369992 0.155414 0.188677 6.535807 10.997141 -18.706129 70.987419 48.440365 28.019770 17.424387 54.716484 5.401154 -0.800673 -0.257395 -0.182369 0.238485 -0.171886 -0.361781 +-2.840847 166.107208 -12.187520 -3.386826 -44.952564 3.472615 5.986441 -1.822455 -6.303314 -6.960638 2.314524 29.584284 -1.021682 0.705801 -0.240431 0.824908 0.614910 0.856751 2.116085 4.837297 -11.882384 -2.382343 0.715351 15.446751 -0.354885 -0.537739 -0.014611 0.628387 0.178956 0.479975 4.597176 1.368080 -6.635199 -0.448872 0.443305 14.086830 -1.067970 -0.256211 27.268509 6.369960 12.367743 5.941165 -12.047565 17.573902 -15.524791 13.117796 -18.458702 -14.757030 -69.187172 -66.160110 45.245892 28.394566 -62.623966 -21.438742 -0.525574 -0.105639 0.423171 0.426595 0.124809 0.152334 5.044918 9.783927 -18.814711 75.794197 49.609234 32.938976 16.483166 57.893078 5.489139 -0.838915 -0.269500 -0.219826 0.231970 -0.137788 -0.400477 +-2.159992 165.633835 -12.135101 -5.287672 -44.062309 5.598478 5.934884 -1.503548 -3.159291 -4.732643 1.173690 22.743078 -1.046881 0.743444 -0.243968 0.817461 0.603384 0.873714 2.503117 4.763614 -12.120962 -1.031927 0.409366 13.689591 -0.344708 -0.573331 -0.031582 0.643150 0.189425 0.490796 5.780529 0.611710 -7.560449 0.075164 -0.464842 14.042303 -0.558760 -1.223659 27.760399 6.800697 12.390827 5.251103 -12.960823 17.841030 -15.378655 12.954215 -18.894741 -15.182395 -75.067116 -67.311241 51.108837 26.665586 -59.707905 -19.447872 -0.566331 -0.102286 0.404490 0.458931 0.108439 0.138467 3.816491 9.591886 -18.812263 76.916672 51.492241 36.605915 14.393044 61.566483 5.152966 -0.854445 -0.294575 -0.235665 0.225663 -0.131867 -0.414920 +-1.562871 165.351776 -12.183123 -6.413427 -43.556396 6.810956 5.758468 -1.113977 -0.148297 -2.971282 0.508582 16.795404 -1.093626 0.785855 -0.248032 0.819832 0.594512 0.902399 2.577854 4.773362 -12.325134 0.070174 0.216528 12.493884 -0.339645 -0.594409 -0.032351 0.662205 0.202237 0.492637 5.809247 -0.016117 -8.234126 0.608593 -1.360903 14.243618 0.220945 -2.177500 28.592331 7.149487 12.864558 4.956171 -13.939013 18.381048 -15.768514 13.005028 -19.239588 -15.432404 -79.147278 -68.317902 55.433243 27.881001 -57.690834 -19.729433 -0.602868 -0.130434 0.413066 0.487138 0.098011 0.132223 3.223720 9.842345 -18.926743 77.674423 54.088097 40.439648 8.925491 64.015701 2.446074 -0.885967 -0.297864 -0.267894 0.243982 -0.128780 -0.440763 +-0.951122 165.236237 -12.295166 -6.929716 -43.515507 7.495130 5.519564 -0.751940 2.094325 -2.186687 0.225381 12.160829 -1.099132 0.797103 -0.248010 0.833374 0.600344 0.919265 2.269024 4.885890 -12.946620 0.674467 0.160533 12.058118 -0.338613 -0.611228 -0.037628 0.672390 0.200799 0.500881 4.820080 -0.626984 -8.584022 1.205361 -2.215324 14.415998 1.435496 -3.089177 29.269243 7.063026 13.389710 5.056177 -14.251827 18.610365 -15.521502 12.593791 -19.622505 -15.151218 -81.647087 -68.300377 57.171257 29.932955 -57.071125 -21.068310 -0.609943 -0.114523 0.404766 0.496720 0.092287 0.133535 3.399432 10.797357 -18.948591 77.225815 57.010139 43.767872 3.393359 65.383881 -0.394404 -0.891226 -0.321322 -0.266715 0.232539 -0.137575 -0.446539 +-0.394605 165.331757 -12.381517 -6.885468 -44.663975 7.695644 5.187340 -0.291453 3.890344 -2.541987 0.223339 8.532451 -1.117140 0.801245 -0.267242 0.834591 0.594175 0.939182 1.802652 5.030499 -13.570665 0.711658 0.187010 11.936299 -0.346661 -0.600188 -0.049527 0.668507 0.178776 0.506545 3.192840 -0.801445 -8.758616 1.720175 -2.692236 14.665085 2.629276 -3.557991 29.969830 7.070270 13.811339 5.552103 -14.908219 18.893860 -16.259546 11.855654 -20.295658 -14.865569 -83.178001 -67.945152 57.457966 31.336916 -56.571087 -22.084843 -0.612736 -0.128142 0.425917 0.486676 0.106070 0.112974 3.816317 12.269733 -18.680784 76.948586 59.026657 45.520245 -1.865840 65.493958 -3.497915 -0.894533 -0.304211 -0.267270 0.228243 -0.126757 -0.464269 +0.176090 165.523270 -12.434559 -6.579142 -46.234596 8.046661 4.656163 0.081303 4.554468 -3.113094 0.278055 6.232237 -1.127210 0.823834 -0.263681 0.814377 0.578803 0.926491 1.274173 5.147223 -14.523710 0.477030 0.218763 11.626559 -0.341266 -0.602457 -0.036708 0.660191 0.204042 0.512253 1.746988 -0.730604 -8.866467 2.042861 -2.838937 14.719042 3.544269 -3.740258 30.349012 7.169073 13.989533 5.682276 -15.478142 19.064768 -16.509010 10.911860 -20.253353 -14.677760 -86.460815 -67.311989 59.288643 31.654510 -56.379906 -22.451283 -0.646311 -0.160174 0.423832 0.509498 0.101289 0.109684 4.626831 13.185744 -18.693058 78.480377 60.003563 47.908428 -2.020316 64.956230 -3.200493 -0.911410 -0.279415 -0.275454 0.251395 -0.106448 -0.463168 +0.933267 165.762054 -12.433804 -6.472995 -47.341961 8.576585 4.205546 0.213702 4.044258 -3.587841 0.330169 5.425428 -1.126349 0.809526 -0.264870 0.823958 0.597954 0.940228 0.849821 5.131092 -15.312308 0.103994 0.243861 11.041361 -0.350120 -0.585546 -0.033320 0.666741 0.193453 0.505179 1.429579 -0.797612 -8.716608 2.139693 -2.915079 14.693138 3.740379 -3.784433 30.401634 7.043937 14.150191 5.797968 -15.883853 19.073729 -17.120924 10.346807 -20.345032 -14.659486 -89.258263 -66.284660 60.292755 31.098484 -57.209187 -22.589682 -0.637520 -0.180510 0.429691 0.500505 0.117670 0.111454 4.761446 13.555538 -18.738310 80.210358 60.019650 49.298573 -1.498041 65.180580 -2.789700 -0.907889 -0.264516 -0.272584 0.265839 -0.115691 -0.462101 +1.755774 166.043671 -12.402987 -6.268582 -47.881737 8.854125 3.464362 0.107938 3.181649 -3.432943 0.272249 5.332133 -1.106604 0.773785 -0.273964 0.839897 0.616288 0.956771 0.406110 4.787937 -15.489355 -0.344432 0.191002 9.758792 -0.364568 -0.562914 -0.036360 0.660200 0.154695 0.506582 1.649841 -0.911833 -8.468642 2.077375 -2.954264 14.714210 3.544783 -3.753711 30.269840 6.802404 14.052200 6.278881 -16.291964 18.974131 -17.704203 10.014317 -20.816105 -14.630104 -90.282364 -65.453041 59.759747 30.129396 -57.729111 -22.358538 -0.604684 -0.171517 0.439503 0.471866 0.144679 0.108995 4.535153 13.596904 -18.583553 80.765663 59.084404 48.395939 -0.569358 66.139709 -2.427980 -0.887886 -0.259113 -0.248803 0.247672 -0.130804 -0.461382 +2.493180 166.174667 -12.366567 -5.774625 -48.506908 9.085707 2.614579 -0.050837 2.036926 -3.463555 0.237043 5.522469 -1.063135 0.737336 -0.262337 0.850471 0.632353 0.959339 -0.112639 4.358645 -15.707052 -0.908793 0.130067 8.416176 -0.378207 -0.551583 -0.034225 0.647481 0.134903 0.513983 1.871063 -1.086206 -8.289625 1.702105 -2.926984 14.552122 2.979524 -3.672489 29.695045 6.647815 14.124891 6.812924 -16.372850 19.085279 -17.664579 10.502190 -20.661245 -15.201012 -90.221375 -64.278061 58.313332 25.227022 -58.710171 -19.633062 -0.572811 -0.147708 0.432977 0.453417 0.166347 0.122767 4.751923 12.818569 -18.327557 82.402374 57.111286 47.400349 2.960052 67.184059 -0.406084 -0.858947 -0.269306 -0.219772 0.225386 -0.154835 -0.444730 +3.104337 166.138580 -12.361123 -5.377493 -49.274864 9.322409 2.131159 -0.111259 1.092507 -3.976084 0.309012 5.863755 -1.025827 0.721481 -0.249544 0.836927 0.618318 0.944057 -0.604539 4.050637 -15.948699 -1.127587 0.053991 7.163304 -0.375311 -0.548874 -0.028757 0.622785 0.134066 0.520451 1.838435 -0.905329 -8.154225 1.573599 -2.645225 14.307020 2.816289 -3.331951 29.011986 6.591502 13.913296 7.036322 -16.348001 19.110130 -17.179478 10.881913 -21.098469 -15.744227 -90.360291 -63.713367 57.684105 20.660542 -58.324493 -16.694958 -0.562860 -0.128252 0.419226 0.450257 0.167456 0.127348 5.057077 12.476528 -17.941404 80.768524 55.652431 44.213364 4.705201 67.917755 0.458741 -0.837151 -0.274073 -0.201588 0.205340 -0.158432 -0.430704 +3.644735 165.965012 -12.278456 -5.281791 -49.636047 9.618383 1.888535 -0.184299 0.406428 -4.302277 0.337856 6.122027 -0.965617 0.679858 -0.243522 0.837380 0.631183 0.925393 -1.007041 3.752043 -15.998919 -0.935912 -0.043269 5.980521 -0.379512 -0.550163 -0.028129 0.601935 0.117710 0.537046 2.434662 -0.888802 -8.131194 1.270829 -2.427172 14.036299 2.224445 -3.116610 28.279497 6.660919 13.862987 7.469388 -16.024477 19.298777 -16.575005 11.597098 -21.390266 -16.256451 -89.184990 -63.032146 55.885300 15.832952 -58.088898 -13.656969 -0.540590 -0.075053 0.390487 0.440754 0.178806 0.135258 4.910627 12.040683 -17.521587 80.955994 53.802822 41.872486 6.294748 67.669899 0.963872 -0.804616 -0.296598 -0.155846 0.160504 -0.172258 -0.405104 +4.165997 165.794037 -12.161412 -5.519197 -49.605152 10.036591 1.999714 -0.232633 -0.278105 -4.897634 0.411094 6.522964 -0.919088 0.621024 -0.238613 0.845250 0.649124 0.914100 -1.107759 3.589437 -16.049902 -0.967949 -0.086224 5.304147 -0.391172 -0.526863 -0.020104 0.585343 0.085673 0.531035 3.086859 -0.884777 -7.949316 1.180746 -2.246736 13.757518 1.977015 -2.857955 27.356874 6.458653 13.692559 8.186945 -15.852287 19.265665 -16.475861 11.546116 -21.749334 -16.434526 -88.645180 -61.485912 53.443806 9.938176 -58.401215 -10.271932 -0.486820 -0.052285 0.393372 0.406538 0.202982 0.149657 4.690033 11.603480 -17.109907 79.806252 51.520981 38.171230 10.749758 67.738121 3.542996 -0.770098 -0.298185 -0.126424 0.135701 -0.196477 -0.387150 +4.610957 165.588043 -12.151082 -5.346190 -49.173733 10.048797 1.917262 -0.353518 -1.104606 -5.477421 0.511152 7.359171 -0.877000 0.594389 -0.218418 0.806916 0.605841 0.877691 -1.339873 3.501498 -16.382124 -1.248385 -0.097400 5.231574 -0.380703 -0.490192 -0.005740 0.540049 0.090139 0.509067 3.116958 -0.870246 -7.545007 1.188169 -2.145591 13.448503 2.106918 -2.618797 26.097023 6.284989 13.591178 8.933543 -15.135174 19.193541 -15.749553 10.937140 -22.790348 -16.320213 -86.314384 -59.476040 48.946125 2.471347 -58.989697 -6.025545 -0.455803 -0.067012 0.401371 0.381975 0.200434 0.150844 4.853712 11.953414 -16.529488 76.978729 49.035892 33.332592 18.638786 67.594078 8.579813 -0.733749 -0.265663 -0.126498 0.138597 -0.188529 -0.371983 +5.077330 165.365860 -12.137441 -5.391473 -48.710621 10.250090 2.027637 -0.505501 -2.038249 -5.863139 0.586008 8.369407 -0.852626 0.554730 -0.221162 0.795097 0.592508 0.861273 -1.326099 3.550413 -16.915388 -1.715844 -0.076003 5.523638 -0.387742 -0.455855 -0.005836 0.513414 0.062845 0.496346 3.203425 -0.794127 -7.074530 1.232844 -1.989836 13.110909 2.322623 -2.342943 24.812037 6.321569 13.192057 9.625464 -14.632455 18.971157 -15.732099 10.149632 -23.322330 -16.620564 -85.172020 -57.131077 45.054642 -7.118002 -57.804947 -0.524927 -0.409888 -0.070343 0.426631 0.342373 0.219029 0.147328 4.889943 12.002140 -16.083113 75.060051 46.177998 28.621929 24.905453 65.980881 11.947321 -0.704013 -0.241795 -0.117339 0.126451 -0.189432 -0.366851 +5.511160 164.997635 -12.047602 -5.293961 -47.953358 10.497688 2.154961 -0.692010 -3.131081 -6.283369 0.665802 9.389389 -0.817303 0.533133 -0.208708 0.768745 0.558134 0.836564 -1.495044 3.673358 -17.859495 -2.161002 -0.043866 6.412472 -0.385248 -0.428509 0.003951 0.471933 0.059712 0.490823 3.366324 -0.841835 -6.683656 1.144231 -1.938038 12.597975 2.447562 -2.237129 23.291262 6.324219 12.568447 10.208038 -14.122289 18.686655 -15.177151 9.719419 -22.911745 -16.879511 -84.739273 -54.613197 41.959877 -16.604340 -55.848263 4.634556 -0.385034 -0.075838 0.437635 0.321342 0.223975 0.146350 5.108632 11.309784 -15.649613 74.939606 42.879398 24.665571 29.090019 62.523048 13.160874 -0.676342 -0.216955 -0.108009 0.118117 -0.182742 -0.355973 +5.975729 164.718033 -11.863252 -5.302130 -46.612427 10.746910 2.308228 -1.000390 -4.335661 -6.614056 0.711387 10.700800 -0.781744 0.506835 -0.202375 0.744644 0.521985 0.822127 -1.789793 3.734812 -18.708181 -2.280045 -0.040708 7.495085 -0.380034 -0.410630 0.005870 0.431718 0.040083 0.487112 3.765532 -0.969738 -6.342091 1.184046 -1.964829 12.088542 2.803968 -2.239013 21.910166 6.255766 11.739151 10.689406 -13.973336 18.508034 -14.365384 8.812634 -22.665823 -16.757832 -85.319992 -52.447044 39.642731 -20.552885 -51.679966 5.998483 -0.357530 -0.064613 0.443843 0.300321 0.227201 0.137715 5.475376 10.360473 -15.217603 74.407814 39.593071 20.598122 31.128378 58.222523 12.645628 -0.645197 -0.209855 -0.095934 0.087798 -0.182156 -0.354024 +6.541968 164.494919 -11.715359 -5.427540 -44.333920 10.843918 2.756126 -1.444317 -5.672246 -6.777926 0.705462 12.394989 -0.766476 0.478938 -0.202541 0.730849 0.495727 0.827638 -2.056098 3.820168 -19.514698 -2.203588 -0.050312 9.261275 -0.378896 -0.384161 0.010805 0.402850 0.009135 0.473366 4.468591 -1.445414 -5.715921 1.308857 -2.312465 11.729095 3.126073 -2.509551 20.640215 6.035393 11.112825 10.824742 -14.353500 18.398081 -14.218781 7.004889 -23.173594 -16.541067 -84.018723 -50.534496 36.170940 -22.095377 -46.706219 5.857731 -0.326100 -0.075654 0.465094 0.274303 0.237849 0.126984 5.811011 10.063232 -15.150534 72.621315 37.037312 16.759340 31.535904 53.127449 11.101893 -0.622997 -0.192670 -0.095404 0.071260 -0.187882 -0.364899 +7.204546 164.207764 -11.697965 -4.652223 -40.580994 10.249565 2.977822 -2.213176 -7.686277 -7.158882 0.688755 14.940269 -0.744488 0.439522 -0.197998 0.749786 0.521325 0.835127 -3.285902 3.518858 -20.242908 -1.598179 -0.160115 11.265115 -0.389100 -0.361604 0.016573 0.405462 -0.011673 0.460464 4.526140 -2.320081 -4.996784 1.293780 -3.029412 11.429747 3.473411 -3.203922 19.562258 6.089178 10.789883 10.601437 -13.639040 18.064959 -14.178087 6.084700 -23.231354 -16.491701 -82.813477 -48.533394 32.645943 -22.093161 -41.960434 4.915391 -0.285835 -0.071272 0.472608 0.247912 0.255488 0.139776 5.753143 9.326966 -15.474208 70.718216 35.166328 14.048994 31.147116 48.390144 9.502047 -0.603989 -0.192389 -0.083363 0.067918 -0.214041 -0.356415 +7.832886 163.948059 -11.567706 -4.039166 -37.380020 9.506545 2.927914 -2.938613 -9.052074 -7.279142 0.624617 17.243574 -0.733843 0.413355 -0.193854 0.753221 0.523080 0.833917 -4.374572 3.232094 -20.898985 -1.082501 -0.312375 13.822042 -0.401555 -0.326908 0.023027 0.394541 -0.027260 0.446990 4.823312 -3.076018 -4.203299 1.283053 -3.649585 11.199993 3.514127 -3.731237 18.540051 5.794246 10.439932 10.872869 -13.158144 17.439377 -14.327139 4.120765 -23.466368 -15.931002 -80.162827 -46.181778 28.302616 -21.938387 -37.609352 4.062568 -0.247865 -0.094603 0.500648 0.215785 0.276697 0.147368 5.583919 9.475564 -15.545424 68.876045 33.652359 11.724177 29.231306 43.623585 7.412969 -0.588198 -0.164948 -0.081871 0.080303 -0.223093 -0.351407 +8.460488 163.585617 -11.405798 -3.755568 -34.813919 9.017931 3.085687 -3.651858 -10.354903 -7.821445 0.668097 19.724806 -0.724290 0.408701 -0.193456 0.741831 0.501515 0.825046 -5.085648 3.045202 -21.837099 -0.542986 -0.520094 16.834372 -0.401134 -0.315330 0.013051 0.377212 -0.034518 0.445089 5.564223 -3.490164 -3.462853 1.290342 -3.870229 10.969480 3.369160 -3.876795 17.628319 5.523723 9.889712 10.375631 -12.552778 16.659075 -13.887792 1.677854 -23.285875 -15.208591 -77.581581 -43.983147 24.594301 -21.347328 -33.903473 3.281768 -0.231740 -0.091070 0.510287 0.197986 0.276955 0.138715 5.728739 9.141832 -15.529655 66.954773 31.854429 9.537202 27.638260 38.865200 5.758027 -0.572394 -0.157926 -0.079069 0.070625 -0.215600 -0.349366 +9.015208 163.217804 -11.239435 -3.403262 -32.989090 8.500189 3.090080 -4.113754 -11.104386 -8.442555 0.771487 21.286917 -0.710280 0.403827 -0.193826 0.722182 0.466220 0.810645 -5.685480 2.989309 -23.588095 -0.342014 -0.723596 21.241095 -0.396328 -0.305020 0.010894 0.346616 -0.043217 0.446991 6.037810 -3.588850 -2.669135 1.318733 -3.803905 10.653463 3.278777 -3.718045 16.624069 5.429049 9.262973 10.152700 -12.197408 16.071753 -13.294462 -1.349499 -22.502745 -14.363648 -75.219315 -41.628216 21.271864 -20.064365 -29.805319 2.374411 -0.218976 -0.083991 0.520432 0.183799 0.274121 0.127887 5.536554 8.492969 -15.240474 65.425079 29.779852 7.567086 25.802567 34.194653 4.266063 -0.558312 -0.148548 -0.073258 0.051430 -0.203097 -0.350735 +9.548126 162.947296 -11.017152 -3.334122 -31.344221 7.811875 3.351379 -4.316428 -11.063261 -9.298347 0.937335 22.033400 -0.689912 0.363937 -0.207350 0.731362 0.468459 0.818316 -5.819951 3.058365 -25.497442 -0.364857 -0.890390 26.363552 -0.405666 -0.279739 -0.000129 0.330689 -0.088644 0.442846 6.311384 -3.578702 -1.601789 1.718378 -3.716057 10.377161 3.749720 -3.616927 15.713515 4.782694 8.640299 10.450081 -12.011909 15.353668 -13.190159 -3.850189 -21.759279 -13.490373 -72.640694 -39.642048 18.165287 -17.126104 -26.735561 1.163237 -0.172690 -0.064552 0.536757 0.142780 0.293126 0.117057 6.209223 8.137712 -15.045162 62.200516 27.879116 5.806174 24.360037 28.679926 3.186207 -0.530866 -0.145853 -0.050635 0.020775 -0.211659 -0.352408 +10.185560 162.654160 -10.763127 -2.855600 -29.450518 6.683204 2.893708 -4.608005 -10.756348 -9.644609 1.004357 23.003426 -0.678482 0.338515 -0.217568 0.723085 0.447610 0.812042 -6.404965 2.954863 -27.601337 -0.203286 -1.163822 32.067871 -0.415417 -0.234679 -0.001782 0.300252 -0.119911 0.435331 6.261549 -3.621241 -0.182850 2.180018 -3.794796 10.020690 4.288009 -3.625567 14.534997 3.831196 7.921453 11.326707 -11.752654 14.255855 -13.344999 -6.215108 -21.321112 -12.427036 -69.406548 -37.072773 14.570958 -14.190797 -24.220568 0.088817 -0.131624 -0.084574 0.573870 0.097807 0.315769 0.105037 6.855547 8.504256 -14.322910 58.582947 25.681368 3.904279 22.017820 23.576063 2.106881 -0.508782 -0.104326 -0.039798 0.017972 -0.201427 -0.353207 +10.898045 162.396591 -10.544028 -2.723150 -27.932606 5.635265 2.712929 -4.813019 -10.472246 -10.119644 1.150131 24.116980 -0.673374 0.314505 -0.231421 0.718763 0.445225 0.801680 -6.691819 3.079387 -29.902905 0.070381 -1.444628 37.795067 -0.430214 -0.181526 -0.004979 0.281600 -0.141277 0.426583 6.789803 -3.691722 1.488590 2.592946 -3.780725 9.747213 4.403991 -3.533485 13.484839 2.744977 7.700224 12.089128 -11.140582 13.081986 -14.175436 -8.084806 -20.713964 -11.708460 -66.024620 -34.458389 11.332027 -11.020774 -21.438622 -0.841928 -0.097585 -0.121823 0.611253 0.052846 0.345008 0.092906 7.555381 8.497947 -13.813388 55.422333 23.877342 2.475344 18.792103 18.776834 1.139875 -0.491107 -0.046234 -0.028338 0.037339 -0.184903 -0.345369 +11.529470 162.111633 -10.298327 -2.495443 -26.280951 4.348070 2.442348 -5.055665 -10.023326 -10.582248 1.317064 25.364876 -0.672470 0.287845 -0.237984 0.715858 0.438845 0.791396 -6.766778 3.206179 -32.194660 0.263626 -1.714481 43.795910 -0.436268 -0.125258 -0.000960 0.266797 -0.157468 0.399156 7.112445 -3.866680 3.392800 2.979767 -3.884837 9.434582 4.469942 -3.548762 12.360051 1.561258 7.796877 12.856572 -10.119952 12.006000 -14.783854 -9.160623 -19.783697 -11.121583 -62.669003 -31.926392 8.742968 -8.672855 -19.054754 -1.357062 -0.052632 -0.162017 0.651091 0.004424 0.361064 0.086630 8.535338 7.598685 -13.142087 52.223011 21.846369 0.988571 16.367065 16.431997 0.643504 -0.472848 0.007767 -0.031653 0.064928 -0.175544 -0.341088 +12.164960 161.952927 -10.013915 -2.398540 -24.582956 2.902677 2.131619 -5.065949 -8.908701 -10.783195 1.434792 26.044443 -0.682050 0.250719 -0.257115 0.742176 0.457198 0.811764 -6.397417 3.647838 -34.433758 0.370956 -1.873216 49.838406 -0.459638 -0.072150 -0.004570 0.266195 -0.205717 0.383250 7.290061 -3.869615 5.479620 3.580310 -3.928139 9.217341 4.835080 -3.525605 11.416520 0.683580 7.435403 13.507328 -9.651917 10.950624 -16.168123 -9.879373 -18.907215 -10.701279 -59.599251 -29.748726 6.808343 -6.897329 -16.836237 -1.625901 0.007793 -0.188465 0.706273 -0.055879 0.398046 0.081977 8.602891 6.605799 -12.287846 49.425083 19.517731 -0.634265 13.037437 15.636235 0.109706 -0.459547 0.046651 -0.026176 0.074384 -0.185141 -0.349778 +12.792810 161.843613 -9.693863 -2.208760 -23.385796 1.331861 1.790020 -5.037875 -7.601022 -11.237442 1.604962 26.510326 -0.681876 0.204592 -0.274475 0.763898 0.482873 0.828570 -6.042880 4.158489 -36.232037 1.036411 -2.243263 54.902790 -0.485143 -0.021191 -0.008208 0.265067 -0.254825 0.368472 7.415636 -3.840186 7.724665 4.146320 -3.938944 9.068166 5.089520 -3.467563 10.542577 -0.231859 7.442299 14.200356 -9.666759 10.348071 -17.698994 -10.695885 -17.898386 -10.264501 -56.126587 -27.516502 4.990882 -5.431382 -15.129548 -1.759436 0.064350 -0.213054 0.751027 -0.111806 0.439705 0.077823 8.596458 5.660647 -11.704353 46.838070 17.569216 -1.648499 9.836167 13.006682 -0.268956 -0.441483 0.084346 -0.014633 0.082491 -0.196309 -0.353075 +13.414145 161.735931 -9.187688 -2.175047 -22.502855 -0.033394 1.442016 -5.004296 -6.335374 -11.580451 1.757685 27.042522 -0.647801 0.173622 -0.270630 0.772992 0.485825 0.838400 -5.459860 4.745141 -37.654560 1.706883 -2.655010 59.103065 -0.494912 0.001233 -0.009212 0.246123 -0.283816 0.372076 8.114553 -3.976257 9.545574 4.598077 -3.864997 8.910819 5.013246 -3.345956 9.754962 -1.001537 7.293248 14.474712 -9.936454 9.855046 -17.760483 -11.828453 -16.445377 -9.789140 -52.368984 -25.280626 3.461583 -4.625863 -13.554544 -1.701028 0.100089 -0.199133 0.755116 -0.140229 0.459397 0.079458 8.290041 4.392107 -11.157803 44.434635 15.724664 -2.269015 7.302358 9.910656 -0.422149 -0.412208 0.086069 0.011751 0.061697 -0.211697 -0.344706 +13.942862 161.691879 -8.696178 -1.858540 -21.448971 -1.656369 0.888064 -5.126836 -5.047823 -12.242907 1.971118 27.952705 -0.615681 0.139276 -0.264203 0.781038 0.499090 0.826399 -4.752303 5.159188 -38.227467 2.341050 -3.057036 62.024246 -0.504690 0.024116 -0.009551 0.237936 -0.300295 0.366054 8.618409 -4.335685 11.381587 4.874151 -3.995136 8.851495 4.695196 -3.417089 9.072591 -2.195494 7.657135 14.549543 -9.631670 9.209462 -17.948116 -12.417798 -14.865746 -9.102456 -48.489285 -22.627131 1.870270 -3.348772 -12.978039 -1.758532 0.142590 -0.185488 0.757652 -0.172193 0.475031 0.091796 8.490059 3.146681 -10.875352 41.980942 14.299168 -2.710303 5.103944 6.871451 -0.438732 -0.384523 0.089374 0.032075 0.056389 -0.224175 -0.324902 +14.527939 161.639938 -8.070327 -1.987689 -20.319613 -2.985504 0.706570 -5.149181 -3.575767 -12.617609 2.093268 28.402304 -0.621510 0.131086 -0.250697 0.766813 0.484197 0.815888 -3.668618 5.603782 -38.432129 3.418152 -3.815818 64.042374 -0.501132 0.053684 0.006717 0.230114 -0.293987 0.334956 9.512220 -4.957158 12.669002 5.109103 -4.244118 8.977954 4.303888 -3.544610 8.780342 -2.899643 8.002971 14.370511 -9.765591 8.928611 -18.517262 -11.988320 -12.979684 -8.505713 -45.862499 -20.219334 0.759443 -1.738338 -12.751713 -1.887986 0.161790 -0.231011 0.778745 -0.188785 0.473831 0.097934 7.048268 1.408308 -10.675583 40.771896 13.135155 -3.063498 3.419028 5.025157 -0.406247 -0.380247 0.124140 0.008445 0.094086 -0.222191 -0.325160 +15.040525 161.656525 -7.452050 -1.894586 -18.880018 -4.391121 0.481657 -5.295700 -2.164596 -12.952045 2.166445 28.891436 -0.630033 0.142582 -0.253220 0.727329 0.426361 0.797037 -2.630907 5.739707 -37.904804 4.469209 -4.569435 64.450294 -0.483549 0.058387 0.006610 0.199678 -0.295886 0.324848 9.759647 -5.494516 13.911802 5.429357 -4.656223 9.024693 4.294415 -3.798410 8.361103 -3.074886 7.880970 14.327673 -10.304857 8.868049 -18.220480 -12.193139 -11.478036 -7.681106 -42.719383 -17.627207 -0.263942 -0.189310 -12.348225 -1.957202 0.160933 -0.247615 0.794794 -0.192907 0.458769 0.078164 5.803906 0.075581 -10.055680 39.129917 11.509327 -3.619625 1.621444 4.144966 -0.371325 -0.374193 0.143016 -0.011654 0.086946 -0.198184 -0.339092 +15.483229 161.690399 -6.799458 -1.882743 -17.358936 -5.631904 0.137725 -5.501371 -0.916787 -12.694860 2.077723 29.550722 -0.627206 0.155013 -0.244108 0.699355 0.375096 0.788940 -1.516503 5.878325 -37.532955 5.978587 -5.575004 64.459106 -0.469407 0.064039 0.010145 0.170551 -0.292572 0.318183 9.886794 -5.959762 14.860575 5.715011 -5.003253 9.114919 4.414496 -4.008487 8.049731 -3.010254 7.480557 14.010108 -10.442042 8.661354 -17.830647 -11.740071 -9.412351 -7.007250 -40.645203 -15.243233 -1.102214 1.421734 -13.038127 -2.120101 0.162378 -0.254339 0.804854 -0.195971 0.443658 0.068695 4.065310 -1.720223 -9.502506 37.865334 9.886753 -4.142363 0.112870 3.768971 -0.336539 -0.365749 0.152017 -0.026651 0.080070 -0.186366 -0.349371 +16.041679 161.748291 -6.069899 -1.887914 -15.910677 -6.742328 -0.618311 -5.646820 0.535678 -12.046301 1.813194 29.865625 -0.610213 0.168314 -0.226951 0.659603 0.324452 0.757086 -0.585518 5.865366 -37.233700 7.715429 -6.666444 63.780704 -0.452771 0.056697 0.015954 0.136990 -0.270471 0.319443 10.671004 -6.626561 15.513944 5.748904 -5.205064 9.258593 3.959971 -4.088583 7.821506 -2.948819 7.156615 13.324201 -10.562287 8.470918 -17.229403 -11.438228 -7.300696 -6.615018 -38.184170 -13.297992 -1.688035 2.497124 -13.812566 -2.190413 0.151661 -0.250631 0.795968 -0.185534 0.422929 0.065663 2.446911 -4.015463 -9.051552 36.803410 8.150711 -4.753599 -1.518933 4.348881 -0.365237 -0.355870 0.155265 -0.033555 0.072713 -0.167967 -0.343057 +16.591484 161.696030 -5.245648 -1.490190 -14.574328 -7.540933 -1.759423 -5.829533 1.599605 -11.689550 1.616582 30.079950 -0.609239 0.211854 -0.205383 0.590290 0.226915 0.724539 0.065190 5.642805 -36.876362 9.463140 -7.560835 61.792778 -0.415422 0.042000 0.018199 0.091344 -0.233593 0.309348 11.077460 -6.996579 15.539642 5.708070 -5.314978 9.222696 3.738240 -4.055237 7.560711 -2.657047 6.570048 12.704834 -10.919835 8.463791 -15.690054 -10.987993 -5.187271 -6.401853 -36.524437 -11.817648 -2.097512 4.168013 -14.285155 -2.344460 0.118566 -0.264619 0.786008 -0.159759 0.377041 0.046383 0.686815 -6.502624 -8.381346 35.541290 6.082051 -5.362917 -2.860470 5.193972 -0.388392 -0.349154 0.162360 -0.068609 0.069980 -0.132993 -0.352963 +17.110605 161.788162 -4.456103 -1.006073 -13.803840 -8.508443 -2.746237 -5.761288 3.084855 -11.968323 1.649002 29.830801 -0.621846 0.249213 -0.191296 0.527758 0.150228 0.693692 1.059205 5.777504 -36.152599 10.692547 -7.849844 59.134991 -0.378494 0.034080 0.030050 0.059990 -0.198980 0.290624 11.152011 -7.225734 15.588461 5.632852 -5.457507 9.456184 3.526150 -4.056798 7.710233 -2.530942 6.034244 12.079504 -11.756313 8.451816 -14.921094 -11.175639 -3.053476 -6.329702 -34.059891 -10.027780 -2.528913 5.571686 -15.767790 -2.540047 0.081960 -0.300600 0.777732 -0.132580 0.336451 0.027590 -0.203889 -8.401016 -8.051851 33.242374 4.668390 -5.617304 -3.848776 5.753705 -0.377522 -0.354285 0.184400 -0.106498 0.087019 -0.097616 -0.363339 +17.647844 162.072861 -3.672932 -0.406610 -13.206940 -9.828917 -3.926695 -5.543361 5.001095 -11.975647 1.562431 29.236265 -0.605870 0.235404 -0.174646 0.501454 0.138229 0.670391 2.219491 5.904577 -34.555080 11.299890 -7.582111 55.713551 -0.365749 0.038043 0.048153 0.049649 -0.186592 0.270805 11.202026 -7.514512 15.726274 5.375001 -5.591716 9.919951 2.940408 -4.147343 8.114386 -2.081576 5.591244 11.877518 -12.220236 8.634819 -14.657080 -12.036433 -1.674009 -6.001417 -30.690527 -7.703784 -3.032579 7.436668 -18.564142 -2.906068 0.079899 -0.318285 0.762967 -0.123294 0.327401 0.034242 -0.570418 -9.385583 -7.559289 31.135132 3.161576 -5.824035 -5.063494 6.330867 -0.398877 -0.347763 0.193552 -0.116251 0.100272 -0.098737 -0.355191 +18.158537 162.349335 -2.803040 0.276213 -12.243917 -10.925541 -5.044120 -5.461626 6.484826 -12.113650 1.485913 28.846609 -0.622692 0.252239 -0.177419 0.513717 0.135079 0.688628 3.152166 5.742441 -32.748402 11.320073 -7.014176 51.762642 -0.364545 0.028658 0.038032 0.058784 -0.189687 0.273278 11.138654 -7.884581 14.951833 5.003368 -5.947675 10.527719 2.451710 -4.471189 9.198942 -2.240231 5.349474 11.703313 -12.293002 8.299742 -14.648385 -12.094965 -0.320884 -5.883162 -28.073393 -5.768735 -3.212739 8.910892 -19.257002 -3.104298 0.079176 -0.309282 0.767407 -0.123939 0.319132 0.030366 0.014648 -10.083215 -7.654359 28.080332 2.456949 -5.655083 -6.328747 5.859103 -0.365277 -0.353820 0.178416 -0.123510 0.095629 -0.101039 -0.365864 +18.770279 162.584869 -1.938410 0.948997 -11.169830 -12.090234 -6.205921 -5.487468 7.750029 -12.270072 1.400043 28.896019 -0.614251 0.254936 -0.174718 0.524315 0.147737 0.685233 3.936343 5.381242 -30.783531 11.288417 -6.469450 47.540325 -0.366559 0.013733 0.030338 0.066280 -0.185210 0.285442 11.497007 -8.432092 14.508771 4.575527 -6.238729 11.029610 1.642748 -4.743938 9.940915 -2.526060 5.175299 11.113753 -12.130023 7.805564 -14.652235 -12.238344 0.929030 -5.919174 -25.380159 -4.183997 -3.190051 9.866738 -19.473000 -3.134611 0.078861 -0.281435 0.751820 -0.120745 0.315577 0.036771 0.236508 -10.990725 -7.711123 25.326334 1.746981 -5.389225 -7.042243 5.636880 -0.329813 -0.351790 0.156201 -0.110504 0.084722 -0.105083 -0.354697 +19.306488 162.671982 -0.995856 1.516709 -10.182038 -12.921791 -7.064865 -5.638588 8.497404 -12.987692 1.524318 29.409908 -0.598530 0.237255 -0.183489 0.540163 0.167509 0.695151 4.908900 5.088339 -28.563667 11.085308 -5.740803 42.433559 -0.371213 0.007427 0.024585 0.068714 -0.207223 0.298049 11.417262 -8.636563 13.968605 4.485554 -6.467214 11.234585 1.521598 -4.931324 10.365324 -2.464418 4.806523 11.110563 -12.440313 7.651311 -14.648966 -11.645477 1.991255 -5.863386 -24.028017 -3.135989 -3.148629 10.323083 -18.225908 -2.946486 0.087290 -0.250448 0.738480 -0.125137 0.324078 0.034429 -0.959873 -11.958897 -7.447312 23.567247 0.935212 -5.259473 -7.842466 5.129245 -0.262309 -0.344164 0.136116 -0.084886 0.056354 -0.115765 -0.351602 +19.768217 162.487488 -0.107242 1.953781 -9.176653 -13.187037 -7.526330 -5.930067 8.515532 -14.109015 1.814248 30.256285 -0.604168 0.249534 -0.170041 0.532370 0.156245 0.691577 5.666242 4.769866 -26.777435 11.231659 -5.129622 36.885464 -0.357742 -0.007828 0.036477 0.071792 -0.190712 0.287566 11.503110 -8.733062 12.791336 4.297537 -6.545551 11.291996 1.375769 -4.975177 10.847047 -2.383180 4.415726 10.993388 -12.934181 7.620457 -13.793324 -10.655560 2.977595 -5.967607 -22.697716 -2.777072 -2.927337 9.957746 -16.833422 -2.644819 0.076326 -0.257731 0.725798 -0.106267 0.305064 0.043539 -2.167334 -13.120697 -7.042492 21.803942 -0.052955 -5.041074 -7.735918 5.238700 -0.248794 -0.352818 0.124083 -0.100952 0.065147 -0.120454 -0.353779 +20.221535 162.244736 0.823468 2.448682 -8.356561 -13.450181 -7.877079 -6.188453 8.431261 -15.576659 2.252379 31.159008 -0.598571 0.254664 -0.154423 0.539586 0.167877 0.695055 6.516151 4.564859 -24.830172 10.912866 -4.308444 31.196280 -0.354991 -0.026848 0.038192 0.084091 -0.174946 0.286965 11.573364 -8.923255 11.627342 3.975466 -6.685982 11.402855 1.041291 -5.135677 11.418332 -2.181147 4.167827 10.772692 -13.010827 7.578401 -13.137735 -10.077913 4.352905 -6.223819 -21.219194 -2.141149 -2.757571 9.944093 -16.126392 -2.469346 0.069230 -0.247309 0.704824 -0.089953 0.294846 0.057591 -2.731207 -14.117768 -7.233391 19.786867 -0.068752 -4.672304 -8.087139 5.048856 -0.261509 -0.354468 0.098691 -0.103191 0.068015 -0.135121 -0.345937 +20.680140 161.951660 1.678796 2.786683 -7.637924 -13.842036 -8.103809 -6.427369 8.446346 -16.739782 2.635273 32.203377 -0.592900 0.252512 -0.166239 0.553172 0.191362 0.688646 7.454468 4.416574 -22.449331 10.176303 -3.389392 25.191154 -0.353870 -0.053241 0.034468 0.095390 -0.178290 0.306808 11.792910 -9.076713 10.506375 3.685543 -6.803295 11.677050 0.640462 -5.262598 12.224933 -2.152959 4.107105 10.590669 -13.219475 7.525066 -12.941433 -9.822303 5.423920 -6.269403 -19.306263 -1.167899 -2.527622 9.634776 -16.665014 -2.404252 0.056142 -0.206853 0.678734 -0.075488 0.289858 0.057882 -2.770318 -14.699391 -7.437585 17.794374 0.024914 -4.264306 -8.372012 5.305501 -0.306069 -0.364081 0.069364 -0.078687 0.042213 -0.134066 -0.338943 +21.181623 161.525574 2.553061 3.174287 -6.853773 -14.296515 -8.387883 -6.648635 8.555002 -18.129774 3.115965 33.321651 -0.569421 0.241591 -0.161353 0.576049 0.227869 0.694772 8.175173 4.123074 -20.040339 9.147344 -2.592812 19.726526 -0.372583 -0.065819 0.032260 0.104084 -0.181297 0.334243 11.961381 -9.134136 9.740479 3.471229 -6.830770 11.823802 0.264697 -5.294850 12.673656 -1.842391 3.666550 10.645670 -13.441114 7.366487 -13.118397 -9.513453 6.524550 -6.731490 -17.901108 -1.097103 -2.321706 9.492599 -16.394730 -2.287619 0.055952 -0.179758 0.661451 -0.069759 0.310509 0.074933 -3.781359 -15.804683 -7.406123 16.705795 -0.257333 -4.038604 -8.600548 6.224546 -0.384813 -0.360754 0.048516 -0.047453 0.028149 -0.151769 -0.320413 +21.622448 160.804031 3.513095 4.024562 -5.872289 -14.642283 -9.198136 -6.860587 8.581141 -19.530458 3.640507 34.533554 -0.579719 0.253971 -0.155659 0.546840 0.207574 0.676913 8.536102 3.700110 -17.784891 7.390490 -1.835848 14.727482 -0.353685 -0.065003 0.039600 0.103787 -0.159785 0.313112 11.468879 -8.959882 9.120256 3.207470 -6.883799 11.685587 0.094433 -5.330815 12.655455 -1.645102 3.692533 10.653983 -13.556220 7.550326 -12.820971 -8.396857 7.524016 -7.196652 -16.704649 -1.651066 -2.020716 8.377947 -14.339320 -1.900223 0.035184 -0.212803 0.651831 -0.053620 0.292445 0.067909 -5.057623 -17.278666 -7.363119 15.874871 -0.451871 -3.816604 -8.187613 7.389155 -0.448485 -0.365736 0.065905 -0.071869 0.053810 -0.137226 -0.321579 +22.020214 160.024261 4.511944 4.652291 -4.303390 -15.109838 -9.622871 -7.251557 8.833234 -20.994297 4.199568 35.949417 -0.598364 0.258581 -0.167188 0.547445 0.215617 0.683633 8.627649 3.233695 -15.915921 5.674345 -1.375939 11.181055 -0.347103 -0.066404 0.036311 0.117678 -0.159872 0.303920 11.206360 -9.162292 8.149042 2.664571 -7.193390 11.761765 -0.441466 -5.649238 13.152406 -1.220223 3.763769 10.648293 -13.470514 7.756055 -13.140706 -7.481570 8.353357 -7.507329 -14.938253 -1.851918 -1.652692 6.814520 -12.610357 -1.557185 0.021610 -0.222909 0.648065 -0.047038 0.285600 0.055837 -5.657560 -18.414675 -7.735792 15.230223 -0.335267 -3.684000 -8.878238 7.703172 -0.504095 -0.376232 0.069974 -0.080859 0.062912 -0.130681 -0.330252 +22.437374 159.174530 5.460219 5.171485 -3.457431 -15.370790 -9.825744 -7.448458 8.913004 -22.667845 4.944061 37.109230 -0.591631 0.253804 -0.164216 0.557258 0.228446 0.684968 8.518587 2.939024 -14.829436 4.944679 -1.191964 9.281343 -0.343713 -0.077966 0.040118 0.125604 -0.158084 0.305579 11.167620 -9.222609 7.832871 2.365947 -7.227389 11.530937 -0.845358 -5.731473 12.915031 -0.981042 3.773301 10.388954 -13.276467 7.836535 -12.853318 -6.722301 9.333761 -7.985518 -13.801444 -2.412543 -1.430594 6.226957 -11.007538 -1.342433 0.021177 -0.204437 0.634001 -0.039528 0.279344 0.062892 -6.706178 -19.608217 -7.942707 14.592486 -0.076018 -3.491260 -9.746717 8.378202 -0.583484 -0.378160 0.050233 -0.074835 0.053379 -0.141134 -0.327017 +22.864645 158.411270 6.196711 4.831555 -2.748364 -15.783571 -9.225907 -7.776366 8.926030 -24.031298 5.731648 38.716942 -0.597881 0.277068 -0.165818 0.534448 0.198134 0.663393 8.674477 2.893362 -14.287873 5.410257 -1.265435 8.954817 -0.324279 -0.096132 0.043077 0.114325 -0.140422 0.309628 11.981267 -9.557547 8.165059 2.365206 -7.284143 11.348562 -1.261078 -5.744738 12.413712 -1.155864 3.925361 9.609926 -13.480472 7.815515 -12.445586 -6.881211 9.920022 -8.470833 -12.467811 -2.588734 -1.232047 5.971716 -9.312444 -1.180564 -0.004238 -0.194875 0.619768 -0.020242 0.253201 0.053161 -7.286872 -20.409159 -7.970345 13.427250 0.127721 -3.174537 -10.771729 9.433916 -0.667027 -0.388629 0.045664 -0.080765 0.046399 -0.117792 -0.329869 +23.241074 157.710938 6.783777 4.144207 -2.425409 -15.781723 -8.203087 -7.968066 8.519644 -25.089634 6.510585 40.094185 -0.579136 0.307647 -0.131935 0.487959 0.144525 0.630558 8.906473 3.192267 -15.039022 6.293676 -1.476150 10.436006 -0.305540 -0.118252 0.055447 0.083143 -0.092260 0.315156 13.385659 -9.779045 7.938061 2.355916 -7.076808 11.100707 -1.788212 -5.547588 12.016577 -0.932139 3.678276 9.006067 -13.877441 7.967982 -11.015976 -7.067632 9.342567 -8.069016 -10.995346 -2.142030 -1.045620 5.361242 -7.672340 -1.006917 -0.037122 -0.205235 0.597120 0.014963 0.227051 0.061175 -8.266223 -19.996689 -7.042833 12.910398 -0.900626 -3.110002 -12.091113 10.091917 -0.735080 -0.384823 0.044058 -0.095253 0.053339 -0.103161 -0.316673 +23.613152 157.256958 7.096375 3.597286 -2.611845 -16.187992 -7.489793 -7.887073 8.349902 -25.800768 7.256255 41.346813 -0.531356 0.278513 -0.124628 0.488078 0.154872 0.620352 8.746735 3.552403 -16.098890 7.686231 -1.858089 13.307311 -0.310598 -0.125455 0.055216 0.066379 -0.104139 0.333931 14.335569 -9.991561 8.815681 2.481429 -6.824279 11.091916 -2.123575 -5.359133 11.562819 -0.885094 3.771662 8.164620 -14.169802 8.207080 -10.830535 -7.799534 8.883418 -7.355741 -9.854422 -0.736476 -0.935953 5.340904 -7.290670 -0.889146 -0.027120 -0.160519 0.570353 0.013719 0.236340 0.067043 -8.677763 -19.193880 -6.446342 12.455900 -1.332025 -3.024599 -13.342148 10.396764 -0.788946 -0.361597 0.021108 -0.057897 0.015915 -0.114818 -0.297967 +23.844151 156.977127 7.323804 3.347018 -2.652537 -16.740406 -7.375207 -7.711689 8.383319 -25.727104 7.586590 42.271820 -0.463973 0.230246 -0.111409 0.505858 0.181223 0.617479 8.021312 3.660187 -16.761732 9.231949 -2.305269 15.797264 -0.325900 -0.115557 0.060151 0.049510 -0.127910 0.352130 14.189692 -9.782053 10.172961 2.975234 -6.529137 10.956674 -1.669143 -5.116862 10.777116 -1.200501 3.797822 8.106646 -14.033078 8.104652 -10.478606 -7.993258 8.264083 -6.661626 -10.299190 0.147855 -1.115474 5.471440 -6.472231 -0.790633 0.010795 -0.111835 0.550053 -0.005898 0.262341 0.088325 -9.272883 -18.396490 -5.630602 12.047355 -2.115676 -2.988931 -14.155423 10.398777 -0.760044 -0.324367 -0.001117 -0.007940 -0.022945 -0.146085 -0.269980 +23.930017 156.796844 7.354068 3.232635 -2.714440 -17.350124 -7.334579 -7.424700 8.558422 -25.526226 7.887050 43.080967 -0.447463 0.204414 -0.111069 0.502641 0.172903 0.606165 7.340649 3.785547 -17.041624 10.449183 -2.607938 17.317030 -0.324861 -0.094518 0.060861 0.035556 -0.140497 0.337043 13.701658 -9.486518 12.066614 3.393023 -6.236355 10.768343 -1.294028 -4.821706 9.665657 -1.459673 4.129537 8.364676 -13.016049 7.899854 -10.193143 -7.596145 7.995392 -6.292735 -11.293535 0.554614 -1.373175 5.006302 -4.492879 -0.680459 0.045295 -0.104305 0.563128 -0.032564 0.264055 0.088959 -10.157625 -17.852879 -5.125590 12.633853 -2.311388 -3.170700 -14.824760 10.544926 -0.756092 -0.304272 0.005752 -0.005393 -0.031846 -0.150019 -0.266452 +23.856419 156.653244 7.419426 3.325954 -2.423187 -17.376730 -7.334501 -7.138654 8.343206 -25.127584 8.075340 43.822269 -0.447108 0.171137 -0.127983 0.516570 0.187323 0.621114 6.550024 3.865166 -17.312525 11.427946 -2.741930 17.661400 -0.331139 -0.075508 0.056071 0.035816 -0.177751 0.325450 13.008883 -8.993628 12.844796 3.521046 -5.916663 10.562853 -1.005907 -4.542493 9.142510 -1.138466 3.693968 8.605086 -12.772305 7.698024 -10.650091 -7.479589 7.651973 -6.116244 -11.652186 0.886873 -1.537213 3.645853 -1.769328 -0.583025 0.076684 -0.096917 0.578621 -0.060658 0.277091 0.078553 -10.745539 -17.122847 -4.673400 13.821847 -2.803336 -3.496293 -15.482805 10.930993 -0.831296 -0.294332 0.009093 0.003584 -0.047452 -0.159441 -0.276344 +23.915344 156.684326 7.588482 3.421980 -2.739570 -16.814859 -7.461777 -6.667479 7.809859 -24.639397 8.146693 43.947014 -0.430532 0.148933 -0.102314 0.533586 0.205458 0.645152 6.055876 4.020766 -17.621496 12.238129 -2.710548 17.189711 -0.336762 -0.067415 0.065153 0.047211 -0.185195 0.305626 12.452289 -8.537021 12.897413 3.652378 -5.638501 10.291553 -0.624201 -4.363271 8.798929 -0.895484 3.114164 8.706623 -13.015443 7.644840 -10.131007 -7.753488 8.381293 -6.008514 -12.298010 1.854503 -1.687602 2.822390 -1.896179 -0.552010 0.108215 -0.106698 0.577784 -0.069780 0.287303 0.104293 -11.160137 -16.421246 -4.610118 14.126824 -1.905852 -3.442018 -15.352974 11.317345 -0.952855 -0.276235 -0.006753 -0.006018 -0.037793 -0.203557 -0.271825 +23.917660 156.880936 7.577765 3.635858 -2.996314 -16.444433 -7.990368 -6.281932 7.378393 -23.796600 7.970345 44.079601 -0.443616 0.148955 -0.098127 0.547156 0.214189 0.665587 5.968394 4.145527 -17.386885 12.070896 -2.459974 16.260868 -0.335538 -0.061054 0.062121 0.063255 -0.192392 0.288797 11.827845 -8.069633 12.835941 3.734097 -5.432897 10.364620 -0.277183 -4.170524 9.002407 -1.296627 2.593288 8.650102 -13.169559 7.001642 -10.244490 -8.438615 9.182777 -6.225212 -12.940074 2.511759 -1.765737 2.479276 -3.195770 -0.586702 0.122088 -0.121010 0.583306 -0.079201 0.285275 0.106246 -10.258843 -15.881330 -4.890172 13.244956 -0.917805 -3.141329 -14.945401 12.025268 -1.090425 -0.274869 -0.010445 -0.019491 -0.023750 -0.217901 -0.277901 +23.785475 157.166687 7.430794 3.742484 -3.022104 -16.182823 -8.155717 -5.972003 7.115982 -23.271181 7.831366 43.896961 -0.454370 0.166697 -0.093497 0.549135 0.199649 0.676859 6.399158 4.287436 -16.850082 11.069496 -2.047534 14.816210 -0.340110 -0.047780 0.054480 0.059340 -0.188815 0.287366 11.079630 -7.701436 12.968838 3.806796 -5.352726 10.448554 0.070969 -4.042615 9.084357 -1.837973 2.108558 9.006285 -12.976683 6.125064 -10.396426 -8.787158 9.857566 -6.270024 -14.229845 3.270169 -1.998384 3.380275 -4.951536 -0.670378 0.126871 -0.138003 0.599859 -0.091286 0.286247 0.103373 -9.521758 -15.276771 -5.001869 12.978760 -0.229275 -3.026392 -14.286368 13.509858 -1.280340 -0.273381 0.003472 -0.028202 -0.007353 -0.212008 -0.281228 +23.787437 157.497894 7.334952 3.916366 -2.999098 -15.497661 -8.379184 -5.687141 6.592358 -22.912998 7.669127 43.419495 -0.474225 0.205595 -0.103315 0.518960 0.159867 0.626114 6.770722 4.265765 -16.439150 9.820209 -1.645097 12.761703 -0.324324 -0.066942 0.048884 0.046597 -0.155477 0.297358 10.853627 -7.473538 12.355332 3.533782 -5.250336 10.355438 -0.090546 -3.914981 9.207302 -2.497175 2.057365 9.405300 -12.175316 5.221722 -9.648104 -9.085279 10.289204 -6.179782 -15.580684 4.047948 -2.249991 5.602591 -7.238420 -0.863319 0.100241 -0.130031 0.599009 -0.077603 0.256925 0.094417 -8.066611 -14.656738 -5.179974 12.438390 0.248389 -2.882872 -13.990202 15.914768 -1.600016 -0.292725 0.011596 -0.037084 -0.004163 -0.164923 -0.275547 +23.744059 157.821106 7.061959 3.966943 -2.758923 -14.997231 -8.255903 -5.275952 6.219133 -22.613592 7.577706 42.818169 -0.486116 0.206624 -0.111840 0.507172 0.149262 0.588332 7.219385 4.358348 -16.288055 8.392530 -1.305886 11.431644 -0.322421 -0.045340 0.054456 0.039325 -0.143085 0.286862 11.052332 -7.310450 12.500518 3.238065 -4.955773 10.136659 -0.594737 -3.594270 8.804580 -3.663041 2.154204 9.779023 -11.004403 4.005689 -10.240213 -8.505431 10.448475 -5.773791 -18.117880 4.637877 -2.785499 6.715659 -8.673582 -1.064377 0.112852 -0.150194 0.621550 -0.096954 0.254000 0.094244 -7.738446 -13.803526 -4.988966 13.479264 0.211893 -3.157707 -13.342627 17.015072 -1.690594 -0.298428 0.048389 -0.043107 0.020931 -0.138038 -0.265213 +23.739830 157.988235 6.865539 3.915880 -1.910652 -14.186563 -8.201230 -5.107973 5.733835 -22.151482 7.343387 42.362785 -0.511901 0.222026 -0.109240 0.485651 0.130104 0.557590 7.463756 4.280293 -16.385405 7.268109 -1.066722 9.818549 -0.300969 -0.027601 0.069566 0.044621 -0.111182 0.250634 11.261729 -7.288606 11.584753 2.795177 -4.878383 9.998405 -1.089216 -3.528922 8.968927 -4.448556 2.584807 9.904210 -9.842669 3.384850 -10.298676 -7.812850 10.518723 -5.223654 -20.149229 5.139461 -3.193446 7.856315 -11.169394 -1.391444 0.107171 -0.194572 0.631180 -0.096747 0.227661 0.093443 -6.759946 -12.934830 -5.323911 13.938816 1.061456 -3.255354 -12.383081 17.219070 -1.687908 -0.312584 0.083752 -0.078546 0.069793 -0.114924 -0.264587 +23.636047 158.111359 6.496283 3.929877 -0.941418 -13.533870 -7.996876 -4.990278 5.135885 -21.927469 7.293117 42.274246 -0.549865 0.234974 -0.117861 0.492396 0.136284 0.549065 7.582891 4.309534 -16.800430 6.249775 -0.886080 8.812644 -0.297516 -0.018000 0.073336 0.065061 -0.097271 0.230101 10.937512 -7.263999 11.058602 2.400058 -4.923978 10.019734 -1.322454 -3.577488 9.265025 -5.040269 3.045179 9.654984 -8.846375 2.926775 -11.206724 -7.393446 10.881449 -5.031012 -22.179565 5.405029 -3.609457 8.773015 -13.110270 -1.729870 0.110542 -0.218408 0.653744 -0.105067 0.216663 0.095752 -5.507053 -12.225116 -6.204278 14.523633 2.753454 -3.305740 -11.148066 16.988642 -1.627354 -0.333915 0.102853 -0.105414 0.105213 -0.102960 -0.270973 +23.484468 158.164917 6.072131 3.986720 0.293346 -12.739963 -7.654302 -4.882473 4.416079 -21.998569 7.350576 42.115250 -0.547735 0.250104 -0.097882 0.497172 0.134265 0.534943 7.582975 4.293560 -17.427608 5.116940 -0.724834 7.756304 -0.291911 -0.022962 0.084830 0.069134 -0.063990 0.225600 10.813659 -7.430016 10.891404 1.969849 -4.983264 9.676713 -1.745103 -3.714412 8.829390 -5.708045 3.450609 9.289143 -7.832101 2.426238 -10.875951 -7.104867 11.702751 -5.084884 -23.953802 5.307051 -3.929873 8.978323 -14.319538 -1.925886 0.110809 -0.216004 0.649272 -0.098411 0.199108 0.117064 -4.346658 -11.749608 -7.279705 15.521336 4.790210 -3.314195 -9.785967 16.417763 -1.509638 -0.339683 0.096390 -0.114652 0.124657 -0.105852 -0.257998 +23.341188 158.157196 5.580336 3.775319 1.672165 -11.777369 -7.033292 -4.788127 3.521564 -22.137239 7.445682 41.968452 -0.515993 0.230168 -0.089332 0.507043 0.161869 0.500739 7.698678 4.313052 -18.264874 4.180147 -0.594026 6.658639 -0.287723 -0.032990 0.084378 0.080215 -0.046340 0.222400 11.285539 -7.720548 10.262361 1.398567 -4.948231 9.393126 -2.533347 -3.817032 8.643242 -6.390893 4.103488 8.806616 -6.189029 1.904761 -10.325876 -6.523434 12.216082 -4.812400 -25.931305 5.195932 -4.311809 8.751471 -15.619110 -2.088205 0.126039 -0.166522 0.616119 -0.100764 0.185453 0.138669 -3.088890 -11.064935 -8.197205 16.603577 6.510370 -3.252963 -7.919317 15.592102 -1.325857 -0.327689 0.067163 -0.094621 0.116711 -0.113256 -0.226546 +23.089725 158.086304 5.018661 4.015799 3.678971 -10.785007 -6.931099 -4.929534 2.397871 -21.978741 7.430902 42.452541 -0.477851 0.208516 -0.066912 0.530927 0.204815 0.492551 7.210684 4.170346 -19.322847 3.342558 -0.494656 5.710546 -0.292831 -0.040698 0.091523 0.097800 -0.031054 0.223175 10.415236 -7.448551 9.125325 1.036125 -4.891435 9.295308 -2.451778 -3.881030 9.031610 -6.138915 3.527831 8.738290 -4.978232 1.146277 -9.697126 -6.564608 12.156527 -4.697127 -27.791201 4.649632 -4.682385 8.688181 -17.831499 -2.418213 0.138719 -0.133231 0.580192 -0.096196 0.185097 0.170602 -1.508436 -10.180712 -8.818911 17.569128 7.265364 -3.296164 -6.512549 14.376296 -1.200077 -0.317080 0.034944 -0.071596 0.116870 -0.142780 -0.195621 +22.933704 158.056152 4.401904 4.110227 5.690945 -10.244308 -6.929873 -5.036515 1.840681 -21.676477 7.306552 42.726692 -0.495579 0.220861 -0.066152 0.528701 0.203812 0.481851 6.676253 3.980944 -19.938200 2.722808 -0.462652 4.965367 -0.286320 -0.041199 0.094890 0.107734 -0.015076 0.212900 10.124492 -7.383855 8.667751 0.654095 -4.869855 9.284740 -2.775603 -3.868451 9.219626 -6.245075 2.965687 8.491001 -4.417862 0.373769 -10.003896 -7.289856 11.837891 -4.838820 -28.685011 4.091335 -4.803697 8.299001 -20.205982 -2.751060 0.133615 -0.147711 0.582997 -0.093395 0.173413 0.173023 -0.020337 -9.361313 -9.387289 18.991123 7.890006 -3.470946 -5.426448 13.439445 -1.115033 -0.329365 0.042717 -0.086118 0.138532 -0.134594 -0.193994 +22.788465 158.074020 3.655849 3.989285 7.949725 -9.934842 -7.068533 -5.204543 1.643520 -20.526823 6.693830 42.749378 -0.508891 0.215092 -0.072599 0.543176 0.224990 0.481077 6.195630 3.750312 -20.308958 2.124880 -0.445103 4.174116 -0.292244 -0.030613 0.096160 0.123765 -0.016537 0.204749 10.131637 -7.436130 8.328128 0.316831 -4.869542 9.379216 -3.204801 -3.871868 9.497863 -6.320107 2.476312 8.564158 -3.651485 -0.358465 -10.802533 -8.144701 11.110174 -5.017533 -29.684099 3.367062 -4.971554 8.151765 -21.797413 -3.052512 0.144774 -0.157932 0.594302 -0.105054 0.179071 0.178167 1.288811 -8.415938 -9.779671 20.788771 8.305515 -3.690272 -4.315142 12.585699 -1.044921 -0.337616 0.052764 -0.089072 0.156108 -0.136386 -0.191363 +22.615467 158.106491 2.890676 3.769262 10.142946 -9.510277 -6.915069 -5.322228 1.394679 -19.605961 6.208193 42.629673 -0.510372 0.215335 -0.076032 0.543365 0.226132 0.487787 5.713652 3.548740 -20.770416 1.664305 -0.443494 3.353856 -0.290367 -0.026321 0.090741 0.126217 -0.022510 0.201783 10.316546 -7.432814 8.029937 0.058176 -4.764056 9.331895 -3.617023 -3.772039 9.562066 -6.183808 1.687234 8.672363 -3.677676 -0.877481 -10.900681 -9.766968 10.159907 -5.444710 -30.188738 2.365940 -5.018300 8.369763 -23.435642 -3.397267 0.143089 -0.161792 0.589737 -0.107632 0.179003 0.170278 2.599916 -7.522945 -9.998303 22.741796 8.443540 -3.925492 -3.408916 12.107288 -1.021405 -0.335550 0.055184 -0.087100 0.157698 -0.134709 -0.192863 +22.281652 158.083267 2.035510 3.618756 12.252890 -9.076368 -6.690907 -5.411732 1.122130 -18.549414 5.688759 42.417320 -0.538027 0.242453 -0.073322 0.554020 0.229933 0.479347 4.936792 3.344814 -21.383074 1.699067 -0.449997 2.620759 -0.284977 -0.039939 0.098484 0.144329 0.004372 0.199168 9.816666 -6.962046 7.528543 -0.039398 -4.484248 9.457363 -3.540447 -3.473099 9.998437 -6.029660 0.806877 8.952204 -2.826485 -1.948157 -10.763220 -11.109665 9.095212 -6.498713 -30.926548 0.077262 -4.825849 7.688038 -24.054075 -3.533066 0.132304 -0.169422 0.593304 -0.095621 0.161164 0.183734 4.921353 -6.842754 -10.428096 23.844744 8.481438 -4.067387 -2.322381 12.109526 -1.006630 -0.362359 0.050860 -0.103329 0.180925 -0.129467 -0.191675 +21.957394 158.036362 1.142491 3.550957 14.287050 -8.726614 -6.379864 -5.428999 0.794932 -17.746920 5.337739 42.294090 -0.535887 0.226656 -0.084761 0.580355 0.268597 0.482841 4.350528 3.155591 -21.945658 1.090674 -0.427852 1.924945 -0.299845 -0.040489 0.085117 0.164848 -0.009739 0.206339 9.103741 -6.473783 7.299942 -0.109634 -4.198224 9.543425 -3.346781 -3.215122 10.306419 -5.728807 -0.407918 9.457000 -2.026471 -3.029159 -11.204853 -12.260705 8.086427 -7.409365 -32.157204 -2.181705 -4.767282 6.970241 -24.860491 -3.664497 0.148826 -0.147639 0.590159 -0.109668 0.176054 0.190158 6.565689 -5.866500 -10.769029 25.746321 8.863983 -4.256690 -1.788428 11.721493 -1.041462 -0.361173 0.037906 -0.084140 0.174698 -0.139571 -0.180529 +21.600687 157.879700 0.259337 3.490875 16.290594 -8.369267 -6.123561 -5.512448 0.225715 -16.835335 4.993694 42.538658 -0.529575 0.207246 -0.086186 0.615729 0.312163 0.498897 3.516533 3.003710 -22.705107 0.668865 -0.408122 1.784638 -0.314774 -0.037352 0.088549 0.183948 -0.024658 0.213033 8.206921 -5.884849 7.235759 -0.100704 -3.860188 9.605570 -2.969213 -2.920262 10.506064 -5.384141 -1.912697 9.630924 -1.621377 -4.116765 -11.796526 -13.357919 6.874176 -8.138259 -33.406586 -4.287539 -4.698488 5.737362 -26.136980 -3.716217 0.166870 -0.136341 0.588231 -0.119701 0.193111 0.204740 7.898942 -4.715439 -10.719953 27.507015 9.022906 -4.338861 -0.610406 11.896057 -1.024677 -0.364636 0.026022 -0.063349 0.172629 -0.162706 -0.171987 +21.222399 157.739349 -0.618976 3.340810 18.523157 -8.042706 -5.865916 -5.697076 -0.416960 -15.923670 4.634014 42.836346 -0.536444 0.210563 -0.089110 0.599900 0.297343 0.479028 2.465173 2.803395 -23.360516 0.585940 -0.401643 1.831574 -0.303996 -0.036967 0.085269 0.181694 -0.016078 0.199682 7.528837 -5.509830 7.462965 -0.149009 -3.666417 9.473260 -2.767115 -2.749368 10.227280 -5.084553 -2.815793 9.776386 -0.847751 -4.947966 -11.539871 -14.476995 5.471475 -8.519284 -34.511204 -5.950130 -4.605996 4.380730 -27.435734 -3.686648 0.166957 -0.139515 0.586323 -0.121440 0.179011 0.199476 9.410004 -3.304622 -10.528950 29.007563 9.310977 -4.369510 0.753923 12.473527 -0.974835 -0.365232 0.031272 -0.074194 0.179254 -0.149632 -0.170004 +20.778021 157.671585 -1.532560 3.287005 20.838064 -7.844714 -5.518689 -5.826994 -0.980344 -15.070426 4.300341 42.896290 -0.534537 0.212007 -0.085149 0.596286 0.289448 0.476515 1.264955 2.684575 -24.172754 0.426945 -0.366344 2.753053 -0.300671 -0.028023 0.083905 0.178467 -0.011404 0.191490 6.621900 -5.139517 7.803907 -0.199702 -3.535221 9.445150 -2.494071 -2.652894 10.059346 -4.773354 -3.821144 10.110120 -0.015896 -5.843062 -11.397410 -15.678273 3.577830 -8.493804 -35.572437 -7.095898 -4.682981 3.000078 -29.461643 -3.713570 0.172351 -0.146007 0.587641 -0.127482 0.174582 0.198836 11.145553 -1.264125 -10.237552 30.348742 9.749285 -4.419700 1.657949 12.984951 -0.966791 -0.360956 0.037398 -0.078080 0.186802 -0.148174 -0.167314 +20.261976 157.702515 -2.481036 3.256681 22.984734 -7.872527 -5.162873 -5.859348 -1.408191 -14.382940 4.094215 42.937103 -0.539098 0.207744 -0.082608 0.600674 0.291186 0.468888 -0.207190 2.664389 -25.038120 0.797997 -0.322369 4.699804 -0.302919 -0.010965 0.090315 0.180230 -0.005879 0.179071 5.797762 -4.752203 8.556449 -0.271644 -3.353103 9.426964 -2.341650 -2.505987 9.730827 -4.784332 -4.614678 10.739384 1.244864 -6.861841 -11.686688 -16.594900 1.732789 -8.498295 -36.596138 -8.472041 -4.625274 1.232092 -31.370882 -3.566630 0.189349 -0.161561 0.603688 -0.141620 0.176454 0.207889 12.708038 1.014437 -10.021794 31.675770 10.688722 -4.352881 2.392825 12.995306 -0.928877 -0.362566 0.053165 -0.085564 0.205371 -0.149643 -0.162833 +19.763088 157.805084 -3.386162 2.829273 25.304111 -7.843194 -4.616441 -5.980406 -2.100504 -13.393435 3.729141 42.964241 -0.530055 0.178920 -0.086158 0.605119 0.311920 0.469364 -1.889207 2.667138 -26.108799 1.948417 -0.339328 6.981335 -0.311025 0.009784 0.090043 0.183934 -0.022455 0.166879 5.214069 -4.490573 9.074948 -0.133009 -3.294852 9.350096 -1.899279 -2.502079 9.444696 -4.713366 -5.866538 11.395557 1.495125 -7.722886 -12.131602 -17.307749 0.277800 -8.493655 -38.308933 -10.029378 -4.505558 -0.954443 -33.294331 -3.227742 0.209214 -0.176359 0.606336 -0.159298 0.193554 0.207459 13.183927 3.151016 -9.768736 33.386993 11.832898 -4.183924 3.019323 13.261099 -0.913734 -0.352236 0.068232 -0.076462 0.214183 -0.157738 -0.155035 +19.322313 157.937271 -4.257771 2.484049 27.977200 -7.751638 -4.311097 -6.176940 -2.884927 -12.196054 3.263193 43.070892 -0.541206 0.169968 -0.093550 0.598434 0.308080 0.448574 -3.990055 2.576065 -27.252754 3.420485 -0.471439 9.995322 -0.312175 0.030379 0.093349 0.182591 -0.019568 0.149795 4.723536 -4.344171 9.331675 -0.129103 -3.378669 9.279859 -1.612962 -2.613530 9.213121 -4.821572 -6.535404 12.433414 2.953179 -8.676460 -12.525736 -17.024481 -0.717313 -8.231140 -41.065678 -11.602469 -4.369796 -2.967537 -36.218510 -3.001929 0.227194 -0.198091 0.630069 -0.177501 0.196757 0.209210 13.138674 5.245288 -9.554245 35.690285 13.279067 -3.963859 3.592250 13.918047 -0.905734 -0.354573 0.095316 -0.088315 0.233263 -0.148248 -0.152201 +18.907169 158.158401 -4.995666 1.865449 30.718611 -7.708497 -3.815501 -6.392940 -3.783800 -10.971092 2.815003 43.304989 -0.534970 0.167854 -0.084985 0.606785 0.311432 0.452643 -6.223923 2.558901 -28.502472 5.851733 -0.823917 13.767307 -0.316229 0.043373 0.094435 0.182772 -0.014767 0.144054 4.592986 -4.333395 9.320169 -0.114940 -3.472768 9.247038 -1.439753 -2.778500 9.155622 -4.868971 -7.447747 13.027915 3.870798 -9.664237 -12.613807 -17.200693 -1.608177 -8.112102 -43.106060 -13.259000 -4.006097 -5.770580 -39.520477 -2.308715 0.240749 -0.203619 0.634872 -0.188184 0.199478 0.218125 13.289014 7.497856 -9.622794 37.697971 15.197155 -3.475591 4.001468 13.937556 -0.895281 -0.348751 0.100176 -0.087928 0.244808 -0.156016 -0.145232 +18.343428 158.626251 -5.854055 1.354488 33.492352 -8.010381 -3.657483 -6.613099 -4.373858 -9.373219 2.160142 43.303696 -0.573775 0.160410 -0.114128 0.631004 0.333316 0.470132 -8.697450 2.512557 -29.453897 9.226365 -1.555251 18.160492 -0.334760 0.066750 0.087823 0.200052 -0.042485 0.139982 4.095198 -4.177905 10.162710 0.115392 -3.627291 9.343244 -0.937899 -2.929913 9.061774 -4.925704 -8.555503 13.678267 4.634355 -10.417125 -14.409803 -18.023531 -3.492726 -7.916337 -44.503078 -14.743550 -3.742747 -8.245678 -43.131371 -1.610453 0.262669 -0.227501 0.681649 -0.217857 0.224401 0.210756 13.618281 10.377492 -9.356873 38.796154 16.679996 -3.279438 4.152055 15.609466 -0.961879 -0.365449 0.127999 -0.095035 0.258298 -0.153785 -0.161440 +17.621674 159.201157 -6.829165 0.799060 36.031700 -8.099056 -3.281379 -6.738570 -5.465189 -7.982557 1.680459 43.266087 -0.566937 0.115050 -0.133147 0.660233 0.386010 0.471406 -11.225476 2.588183 -30.847837 13.429811 -2.744313 22.998085 -0.355908 0.096970 0.083642 0.217307 -0.070753 0.133214 3.846922 -3.873697 10.806840 0.361600 -3.546401 9.458077 -0.480839 -2.924969 9.071146 -5.239531 -9.521555 14.326625 6.134569 -11.360838 -16.173449 -17.974445 -5.779720 -7.498515 -46.566113 -16.905218 -3.198153 -9.844667 -46.421879 -1.112694 0.299874 -0.225781 0.696549 -0.253184 0.255485 0.214203 13.410293 13.657501 -8.780685 39.728176 17.928946 -3.231884 3.462525 18.221159 -1.250502 -0.358443 0.144400 -0.071750 0.262768 -0.165974 -0.149281 +17.171635 159.773895 -7.603308 -0.032820 38.894947 -8.414475 -2.958220 -6.839622 -6.135656 -6.211365 0.963992 42.859600 -0.571935 0.092545 -0.145623 0.692347 0.433616 0.478547 -13.706189 2.448046 -31.291513 18.053425 -4.395908 26.954058 -0.385581 0.120470 0.080358 0.237111 -0.084937 0.139118 4.136022 -3.832840 10.867440 0.535374 -3.585797 9.711209 -0.327272 -2.992548 9.469954 -5.224710 -10.536887 14.897994 7.549404 -12.029225 -18.052181 -17.926872 -8.213971 -6.929181 -48.450596 -19.065207 -2.565194 -11.832041 -51.055241 -0.311980 0.324362 -0.234166 0.723374 -0.279122 0.291380 0.226534 12.128415 17.020140 -8.116495 40.463005 19.111759 -3.092690 3.265156 21.091084 -1.503549 -0.363474 0.163179 -0.058007 0.277903 -0.177584 -0.140358 +16.689190 160.645325 -8.259390 -0.986604 41.164921 -9.050812 -2.338379 -6.536524 -6.123587 -4.565276 0.398401 41.492256 -0.598095 0.095629 -0.174320 0.713298 0.455097 0.479037 -15.436587 2.733941 -31.114683 22.152109 -6.075501 30.274235 -0.401053 0.138537 0.068341 0.251989 -0.092328 0.146244 4.486831 -3.650137 10.774572 0.768417 -3.542802 10.123421 -0.219267 -2.918562 10.168700 -5.561408 -11.080263 15.945494 9.239957 -12.714532 -19.686199 -17.813103 -11.346509 -6.293537 -49.703735 -21.218960 -1.877871 -13.144697 -54.774200 0.236067 0.335323 -0.241181 0.755782 -0.301869 0.309840 0.221561 11.018990 20.890614 -7.532472 40.089783 20.403116 -3.088251 2.579782 23.512043 -1.844808 -0.375570 0.188226 -0.054556 0.289759 -0.164476 -0.140813 +16.066856 161.580490 -8.824518 -1.853320 43.062630 -9.441301 -1.339475 -6.037842 -6.332682 -3.387012 0.132577 39.805664 -0.619465 0.109737 -0.177787 0.722688 0.471034 0.472999 -16.483078 3.285605 -30.935383 25.272814 -7.653162 33.403931 -0.400728 0.145437 0.068078 0.273476 -0.072611 0.136654 4.428743 -3.256482 10.213517 0.996265 -3.393944 10.690474 0.089975 -2.768482 11.277493 -5.710121 -11.815079 16.473843 10.322266 -13.455010 -20.496716 -17.237873 -14.124852 -6.098426 -50.826546 -24.112024 -0.599019 -13.688970 -57.544189 0.584880 0.330893 -0.263808 0.761597 -0.302538 0.305991 0.227099 9.987198 23.809050 -7.424174 38.840832 21.946421 -3.125399 2.746468 27.756496 -2.139348 -0.388964 0.203511 -0.066864 0.324018 -0.157679 -0.133831 +15.431815 162.631470 -9.463816 -3.073774 44.850723 -9.905937 -0.344240 -5.578189 -6.716943 -1.911630 -0.279858 37.920002 -0.623508 0.096479 -0.165812 0.744080 0.513826 0.461181 -16.938362 3.848876 -30.790859 28.068054 -9.270862 36.143795 -0.402151 0.150942 0.079236 0.306245 -0.052972 0.110588 5.211053 -3.336648 9.509777 1.031199 -3.293776 11.254478 -0.178179 -2.707068 12.427032 -5.961352 -12.370652 16.709988 11.296601 -14.166090 -21.112555 -16.655561 -16.645897 -5.943945 -51.455486 -26.810942 0.572534 -13.033577 -60.670258 0.385723 0.345693 -0.273928 0.750689 -0.306151 0.298678 0.253007 8.647395 26.343460 -7.789784 38.213287 23.906502 -3.027874 2.377561 31.528460 -2.609058 -0.397251 0.200191 -0.074216 0.363389 -0.172271 -0.115292 +14.853101 163.563324 -10.080289 -3.933380 46.278973 -9.955809 0.413590 -5.102113 -7.086916 -0.932157 -0.491077 35.874622 -0.639863 0.111243 -0.174512 0.760998 0.540621 0.437238 -17.193575 4.362242 -30.709711 30.442806 -10.772586 38.339657 -0.402071 0.133349 0.080059 0.331685 -0.029798 0.119525 6.140442 -3.352044 8.535958 0.901594 -3.103024 11.807942 -0.672497 -2.527911 13.692346 -6.163641 -12.825690 16.548044 12.354906 -14.784432 -21.978983 -15.088415 -18.759619 -6.019587 -52.421284 -29.914448 2.272311 -11.611681 -64.063637 -0.263262 0.338116 -0.257264 0.743823 -0.298166 0.289532 0.268452 7.017131 28.010439 -8.476720 38.743263 26.015669 -2.845664 1.119649 35.386250 -3.466334 -0.418539 0.190524 -0.071105 0.376006 -0.163420 -0.099423 +14.262692 164.465393 -10.662485 -4.394501 47.968857 -9.604960 0.657915 -4.733649 -7.321080 0.089162 -0.752888 33.365192 -0.668674 0.165574 -0.183821 0.742590 0.521443 0.398544 -17.627085 4.568457 -30.288893 32.563927 -12.124274 39.766102 -0.385010 0.102899 0.073843 0.338087 0.019461 0.138895 6.942648 -3.350641 7.566299 0.700247 -2.982768 12.279763 -1.249782 -2.383368 14.820922 -6.096032 -13.441024 15.856439 13.158281 -15.428647 -22.558655 -13.408677 -20.584801 -6.537934 -52.518108 -33.455959 4.535246 -10.482761 -66.780449 -0.520075 0.292532 -0.255472 0.731951 -0.268361 0.261156 0.263346 5.890178 28.982708 -9.354383 39.226479 28.550785 -2.334633 -0.334999 38.468678 -4.334949 -0.444521 0.194979 -0.081779 0.392443 -0.121912 -0.086680 +13.720578 165.351089 -11.217707 -4.691928 49.484642 -9.036269 0.941338 -4.341800 -7.423440 0.383917 -0.763143 30.667219 -0.694495 0.208821 -0.179007 0.735090 0.526543 0.351110 -17.716873 4.716155 -29.748976 33.810562 -13.147319 41.044502 -0.360803 0.067176 0.078932 0.368001 0.079686 0.134477 7.611152 -3.423563 6.156785 0.419732 -2.923985 12.849116 -1.851515 -2.331616 16.350416 -5.897556 -13.818178 14.803720 14.000675 -16.115679 -22.806025 -11.285778 -21.951818 -7.596064 -52.932182 -37.586761 7.357834 -7.134709 -67.640076 -2.259878 0.257978 -0.250388 0.700944 -0.234961 0.218763 0.279734 4.518273 29.397842 -10.628153 39.539623 31.923159 -1.339439 -2.295041 41.609447 -5.461801 -0.473009 0.181154 -0.101665 0.427437 -0.097784 -0.064249 +13.206133 166.135834 -11.689218 -4.721579 50.519264 -8.231894 1.369676 -3.931972 -7.428536 0.069967 -0.589116 27.996649 -0.705249 0.243011 -0.159639 0.734859 0.538727 0.313279 -17.462400 4.917012 -29.297411 34.568932 -14.030864 42.485584 -0.340604 0.034988 0.090503 0.395314 0.141447 0.127457 7.829512 -3.335648 4.849782 0.209402 -2.813303 13.250191 -2.196557 -2.252837 17.614441 -5.549158 -14.082881 13.704345 14.663925 -16.709972 -22.696003 -8.531152 -23.391979 -8.679949 -53.343193 -41.482845 10.101558 -1.912550 -67.067848 -5.372011 0.229854 -0.244411 0.663624 -0.201570 0.178161 0.305315 2.932108 29.817005 -11.610174 39.405567 34.995018 -0.163858 -3.843818 44.598351 -6.436661 -0.494800 0.160975 -0.116155 0.464488 -0.087584 -0.037675 +12.806966 166.813156 -12.108746 -4.765068 51.619850 -7.472770 1.687264 -3.538800 -7.139813 -0.021548 -0.550014 24.713989 -0.711897 0.259648 -0.139709 0.757639 0.578440 0.300162 -16.783701 4.947324 -28.501793 34.548111 -14.707168 43.973442 -0.337574 -0.001493 0.097800 0.436337 0.177332 0.123631 7.923903 -3.287674 3.454765 0.036565 -2.742622 13.537065 -2.399040 -2.254027 18.830299 -4.749619 -14.726138 12.635323 14.308443 -17.039587 -22.261341 -6.170968 -24.408869 -9.756115 -53.373894 -45.434513 12.881877 4.733017 -65.473183 -9.183408 0.214087 -0.222208 0.624443 -0.173738 0.153593 0.339315 0.880408 30.138102 -12.370649 39.587921 37.750633 1.172552 -6.238890 47.454464 -7.925097 -0.517609 0.118406 -0.120527 0.489027 -0.100248 -0.018800 +12.485918 167.349182 -12.455145 -4.546903 52.472927 -6.440916 1.790508 -3.155471 -6.712024 0.006666 -0.538840 21.043997 -0.741445 0.317358 -0.127913 0.740768 0.552199 0.279518 -16.014681 4.871949 -27.506166 34.232586 -15.069905 44.868546 -0.301013 -0.040530 0.099281 0.454912 0.228842 0.111434 8.023895 -3.151315 2.042318 -0.236207 -2.600844 13.690130 -2.729212 -2.113617 19.842817 -4.128011 -15.161515 11.507362 13.993971 -17.594133 -21.337301 -3.516108 -24.910122 -10.827344 -53.465519 -49.066177 15.660485 10.845249 -62.916119 -12.373714 0.171895 -0.221116 0.588836 -0.134309 0.096760 0.341677 -0.983713 29.978006 -12.921232 39.739288 40.512497 2.811495 -8.581274 50.315239 -9.412786 -0.540438 0.094500 -0.153488 0.514443 -0.079074 -0.016819 +12.185399 167.680847 -12.770546 -4.199746 53.300293 -5.104796 2.011855 -2.797463 -6.613676 -0.297071 -0.445910 17.846504 -0.766706 0.393060 -0.121096 0.698258 0.501681 0.214382 -15.122671 4.816261 -26.472750 33.415573 -15.000266 45.211437 -0.256473 -0.096737 0.093961 0.458889 0.304505 0.116285 8.007273 -2.930420 0.612796 -0.493445 -2.432881 13.695381 -2.954969 -1.909390 20.669956 -3.729801 -15.489372 10.222374 14.363081 -18.483309 -20.452068 -0.516053 -24.818974 -11.770927 -55.440075 -52.854946 19.578350 17.035805 -60.294605 -15.535601 0.114273 -0.199549 0.545407 -0.085207 0.027928 0.342457 -2.414251 29.132845 -13.523192 40.007385 43.564026 4.947254 -10.685788 52.179882 -10.543545 -0.563612 0.071504 -0.182300 0.530502 -0.029085 0.001265 +11.827415 167.908798 -13.025373 -3.258121 54.340790 -3.223927 1.884056 -2.521969 -6.641483 -0.738588 -0.356498 15.033443 -0.786429 0.462044 -0.113364 0.672532 0.466679 0.157387 -14.276792 4.649783 -25.241364 31.972466 -14.392402 44.932030 -0.219025 -0.165812 0.096303 0.466160 0.372005 0.135307 7.085906 -2.563354 -0.670349 -0.628186 -2.313606 13.572267 -2.657947 -1.830939 21.292379 -2.972504 -15.984257 8.863647 14.277975 -19.240900 -19.270519 2.247758 -24.691788 -12.692981 -57.466736 -56.847778 24.138208 21.543144 -57.074776 -17.199856 0.058151 -0.159590 0.499103 -0.029841 -0.035013 0.353270 -3.120981 28.574865 -13.730799 39.697868 46.499565 6.885114 -13.931258 53.517982 -12.202740 -0.594531 0.029750 -0.197572 0.529147 0.007511 0.017945 +11.576501 168.005081 -13.240208 -2.372653 54.892162 -1.302026 1.798462 -2.161704 -6.592886 -1.374662 -0.240132 12.139935 -0.785975 0.504077 -0.088770 0.659712 0.475048 0.084610 -13.029270 4.599431 -23.689720 29.901279 -12.982606 43.378571 -0.176936 -0.230933 0.113545 0.496891 0.453736 0.130870 6.270736 -2.257029 -2.202848 -0.801386 -2.127399 13.521660 -2.435039 -1.698844 22.225773 -2.369886 -16.387335 7.009543 14.367639 -20.225208 -18.367674 4.681623 -23.712393 -13.480686 -61.294563 -60.470791 29.778421 25.807856 -54.062775 -18.728111 0.013014 -0.118481 0.420013 0.027117 -0.106332 0.385430 -3.867907 27.760944 -14.162540 39.734589 49.959095 9.323121 -17.782619 54.002815 -14.106361 -0.620794 -0.021250 -0.204888 0.553346 0.026988 0.059859 +11.298621 167.994858 -13.368040 -0.792905 55.117901 0.992292 1.331171 -1.825020 -6.295365 -2.043552 -0.140157 9.480446 -0.806420 0.542573 -0.069253 0.657416 0.492128 0.048487 -12.006227 4.464552 -21.888779 27.517517 -11.207448 40.990120 -0.151873 -0.275528 0.123679 0.536979 0.516732 0.115415 4.665720 -1.940511 -3.655426 -1.080963 -2.009114 13.416307 -2.087149 -1.627495 23.073221 -1.301061 -16.551044 5.809267 13.975609 -20.398928 -17.605257 7.058963 -22.867157 -14.088727 -64.752594 -63.495991 35.174774 29.102512 -50.911228 -19.560602 -0.026070 -0.111168 0.369820 0.071671 -0.156600 0.410573 -5.647641 27.745802 -14.611363 40.926132 53.300507 11.981313 -22.539183 52.508587 -16.325834 -0.650313 -0.053849 -0.229089 0.595152 0.036668 0.080354 +11.044272 167.863754 -13.506510 0.689970 55.309681 3.017497 0.712117 -1.525772 -5.918084 -2.489396 -0.095539 7.264932 -0.796555 0.562162 -0.039260 0.664602 0.518503 -0.000107 -10.791027 4.340140 -19.392477 24.839870 -8.935286 36.903790 -0.134061 -0.318434 0.134922 0.569795 0.577360 0.106810 3.188261 -1.623040 -4.846014 -1.245507 -1.824696 13.449485 -1.734775 -1.503938 23.828091 -0.655398 -16.558241 4.449826 14.372648 -20.930107 -17.078518 9.612616 -22.311209 -14.395437 -66.392403 -65.933136 39.015152 32.935078 -49.109322 -21.000660 -0.040477 -0.070331 0.312961 0.102478 -0.202122 0.452650 -6.989347 28.121992 -15.001750 39.929863 56.287239 13.442595 -25.634418 50.352642 -17.219332 -0.663450 -0.102301 -0.232946 0.620826 0.034268 0.118344 +10.683971 167.607010 -13.641575 2.301018 55.495644 5.225068 0.136649 -1.301191 -6.003906 -3.139930 -0.030604 5.361740 -0.791643 0.598247 -0.007455 0.636454 0.498858 -0.056506 -9.415196 4.088541 -16.926962 21.280912 -6.608449 32.432419 -0.101092 -0.366363 0.156036 0.573975 0.645436 0.102147 1.486730 -1.276938 -5.811574 -1.339177 -1.625680 13.308718 -1.164265 -1.270748 24.099091 0.122562 -16.696753 3.312419 13.982677 -21.384287 -15.820205 11.485244 -22.223478 -14.397874 -67.658150 -67.822037 42.112904 35.702618 -47.122803 -21.767176 -0.081452 -0.054435 0.259550 0.152341 -0.258025 0.476082 -8.356370 28.885790 -14.853574 37.338409 58.112141 13.393728 -28.892778 48.827816 -18.279493 -0.682336 -0.132696 -0.248042 0.640709 0.051143 0.143560 +10.433165 167.313736 -13.822708 3.085291 55.201031 6.583440 -0.182547 -1.107644 -6.131724 -3.486523 -0.002874 3.804310 -0.774682 0.613866 0.017077 0.615278 0.481965 -0.093948 -7.659652 3.835726 -14.356615 17.591459 -4.572694 27.843292 -0.079045 -0.387056 0.167921 0.568818 0.686795 0.096004 0.669106 -0.811065 -6.553516 -1.355054 -1.195394 13.194625 -0.869005 -0.763251 24.211855 0.569497 -17.043695 2.612498 14.208424 -21.997995 -15.270849 12.650104 -22.158976 -14.445641 -70.607552 -69.651314 46.479816 36.791348 -44.981388 -21.559603 -0.098274 -0.040712 0.222557 0.175401 -0.292177 0.490606 -9.119526 28.959354 -14.593018 34.873951 59.328346 13.131479 -30.959402 48.125580 -18.858667 -0.681409 -0.148675 -0.252443 0.651665 0.059984 0.165620 +10.168530 166.994415 -13.932798 3.440435 54.120106 7.253881 -0.327975 -0.966965 -6.204790 -3.845398 0.030914 2.937017 -0.768880 0.620936 0.033052 0.599479 0.476993 -0.131315 -5.748344 3.571602 -11.632558 13.994715 -2.931813 23.635168 -0.055769 -0.409885 0.177687 0.576763 0.718004 0.079172 0.054127 -0.220166 -7.222698 -1.366285 -0.596868 13.257779 -0.665200 -0.087652 24.573917 0.785538 -17.182543 1.930159 14.138578 -22.439123 -14.657471 13.215646 -22.514431 -14.361300 -72.916046 -71.137932 49.822723 38.065071 -42.924686 -21.498182 -0.108553 -0.025506 0.186367 0.194525 -0.328299 0.503421 -9.584297 29.608854 -14.482474 32.095570 60.248268 12.352732 -31.489964 47.351395 -18.650467 -0.685298 -0.170123 -0.262035 0.663012 0.066536 0.182081 +9.876453 166.776535 -14.079514 3.705465 52.135876 7.563731 -0.634769 -0.985742 -6.384923 -3.967617 0.028612 2.851323 -0.733407 0.593263 0.055491 0.613572 0.508526 -0.152162 -4.228597 3.184979 -9.141521 10.468566 -1.651037 19.803923 -0.055230 -0.414818 0.191513 0.586018 0.730800 0.069975 -0.178917 0.590098 -7.646791 -1.499009 0.337605 13.456400 -0.790496 0.859650 24.964397 0.559576 -16.949734 1.702214 14.728318 -22.738453 -14.576132 13.943546 -22.919796 -14.628919 -73.628769 -72.062859 51.199928 37.536575 -41.313354 -20.662922 -0.086744 0.005011 0.156555 0.192519 -0.335725 0.534067 -9.482147 30.307566 -14.418263 30.040119 61.405636 11.847075 -31.358892 46.619648 -18.184090 -0.672619 -0.195990 -0.244785 0.664581 0.044254 0.210639 +9.541223 166.600311 -14.281933 3.897967 49.956551 7.945073 -0.835268 -0.994800 -6.756844 -4.159813 0.035783 2.472673 -0.761857 0.639733 0.057832 0.585431 0.472841 -0.191228 -3.390173 2.775713 -7.327933 7.811741 -0.870193 16.256784 -0.041512 -0.421091 0.191806 0.583036 0.775388 0.068135 0.157326 1.451674 -7.918721 -1.763887 1.283587 13.637240 -1.321790 1.970589 25.279144 0.132657 -17.040478 1.363859 15.331385 -23.328138 -15.201108 14.069064 -23.202278 -14.966962 -74.900719 -72.624817 52.846272 36.863003 -40.433186 -20.076008 -0.111019 -0.022263 0.165581 0.204544 -0.358252 0.534861 -9.620315 30.997015 -14.753606 29.495163 62.514088 11.926205 -30.272646 45.762093 -17.296398 -0.689332 -0.170738 -0.273464 0.701419 0.081499 0.218607 +9.165306 166.542740 -14.588821 4.312086 48.742527 8.651112 -1.267901 -1.120650 -7.363928 -3.927954 -0.017736 2.007799 -0.784652 0.667005 0.053832 0.589126 0.479262 -0.204507 -3.074463 2.334141 -6.427413 6.136187 -0.500483 13.593515 -0.039706 -0.431810 0.183195 0.601509 0.798533 0.070578 0.326973 1.923448 -8.098138 -1.979100 1.878178 13.755208 -1.468070 2.656774 25.650402 -0.320981 -17.012539 0.838655 15.417466 -23.638208 -15.848079 13.990120 -23.491034 -15.341755 -77.930733 -72.656303 55.037014 36.375736 -39.230991 -19.693182 -0.123361 -0.026028 0.163329 0.210050 -0.368757 0.539255 -9.793149 31.793833 -15.295434 29.589550 63.675911 12.513328 -28.640936 45.407253 -16.345547 -0.701877 -0.169262 -0.283468 0.725509 0.097339 0.227777 +8.800166 166.512451 -14.923620 4.501782 47.991787 9.502778 -1.567154 -1.301594 -8.329415 -3.535054 -0.081842 1.741989 -0.802597 0.684757 0.039981 0.602603 0.494486 -0.214386 -3.045985 2.127106 -6.651189 5.411744 -0.371149 12.115112 -0.035919 -0.454349 0.175064 0.621735 0.803925 0.082878 0.959851 2.374315 -8.147620 -2.129027 2.486639 13.625222 -1.678009 3.319854 25.686594 -0.743208 -17.362083 0.332323 15.154826 -24.157352 -16.242849 13.197869 -23.827110 -15.367462 -84.174477 -72.335609 59.836182 36.009281 -38.454174 -19.556496 -0.131846 -0.004850 0.152749 0.216757 -0.378459 0.541594 -10.089988 32.153591 -16.014200 31.557972 64.344025 14.306068 -25.902817 45.694057 -15.074304 -0.716068 -0.186516 -0.277857 0.722627 0.107022 0.234166 +8.586409 166.435776 -15.205557 4.357199 48.056946 10.202083 -1.541206 -1.458974 -9.371375 -3.338039 -0.145400 1.436439 -0.790205 0.650547 0.035060 0.640863 0.551252 -0.195058 -2.866284 1.915725 -7.251720 5.079064 -0.357461 11.291877 -0.051994 -0.445918 0.171395 0.646115 0.779552 0.081174 2.122202 2.365496 -8.087042 -2.359376 2.746652 13.304601 -2.086706 3.539975 25.337971 -1.233855 -17.532305 0.141490 15.119608 -24.367640 -17.006695 12.299326 -24.492140 -15.525284 -87.916679 -71.367073 61.343941 34.485294 -36.580051 -18.552229 -0.104693 0.010584 0.144377 0.198554 -0.358704 0.551563 -10.357691 32.372093 -16.816174 35.862228 64.677437 17.374866 -22.408247 45.315441 -13.420506 -0.707343 -0.200197 -0.252300 0.719723 0.081239 0.245471 +8.365909 166.348557 -15.287476 4.481395 48.717144 11.229159 -1.506186 -1.746563 -10.662601 -3.187374 -0.194939 1.672659 -0.790696 0.653744 0.050814 0.622708 0.528947 -0.202562 -3.029966 1.665542 -8.089219 5.585807 -0.538036 10.837866 -0.044540 -0.434963 0.185036 0.634671 0.792574 0.064563 2.281876 2.203046 -8.005975 -2.511377 2.668709 12.764715 -1.892890 3.375859 24.415306 -1.564923 -17.423315 0.330084 15.106267 -24.453798 -16.821606 11.703501 -25.013308 -15.621318 -90.749596 -69.434044 60.911686 32.497971 -34.802826 -17.526775 -0.104625 -0.021541 0.152061 0.200787 -0.365619 0.554622 -9.781490 32.639088 -17.248283 41.267487 64.379097 21.050037 -17.403309 45.503872 -11.094868 -0.706645 -0.182058 -0.271120 0.740292 0.082561 0.243460 +8.143301 166.261108 -15.231646 4.537762 49.026669 11.842216 -1.513544 -1.891543 -11.292871 -2.788465 -0.261638 1.423785 -0.774746 0.612598 0.033162 0.658000 0.571083 -0.164493 -3.255824 1.469867 -8.872176 6.203793 -0.732421 11.028582 -0.070961 -0.409952 0.169279 0.642828 0.742670 0.071686 2.249299 2.036830 -7.920214 -2.575247 2.564997 12.438123 -1.540122 3.139765 23.828650 -2.026118 -17.326401 0.966563 15.329157 -24.199612 -17.587408 10.904853 -25.179010 -15.937105 -92.720840 -67.124458 58.881336 30.363918 -32.735668 -16.416487 -0.068388 -0.006885 0.166931 0.166842 -0.325089 0.549229 -9.647424 33.000530 -18.185049 46.914017 63.340549 24.205454 -11.747767 45.353100 -8.513728 -0.685879 -0.183125 -0.241217 0.716831 0.056860 0.240440 +7.919151 166.182098 -15.086643 4.882562 49.088245 12.560188 -1.646205 -1.994519 -11.730253 -2.593798 -0.276948 1.103996 -0.783290 0.629875 0.025744 0.622093 0.511723 -0.169862 -3.661989 1.384174 -9.660918 6.778508 -0.931180 11.547165 -0.064407 -0.396727 0.162346 0.609184 0.738423 0.071848 1.721237 2.052161 -7.859854 -2.630929 2.439674 12.125605 -1.150576 2.843761 22.986265 -2.266062 -17.056347 1.921646 15.527466 -23.977873 -17.125113 10.585032 -25.467415 -16.166025 -92.096764 -64.311882 54.587063 27.116297 -32.591377 -15.272180 -0.074578 -0.027446 0.194861 0.161210 -0.325202 0.527176 -8.040195 34.027721 -18.237406 52.058891 60.867493 25.269495 -6.801988 44.892387 -6.477385 -0.679810 -0.155272 -0.259965 0.708341 0.080392 0.221564 +7.708000 166.076431 -15.019375 4.891163 49.298996 12.903920 -1.373117 -2.050375 -12.124472 -2.788312 -0.301026 0.887262 -0.781020 0.581281 -0.000643 0.655208 0.545500 -0.116903 -3.786401 1.322249 -10.318563 7.443825 -1.102855 11.907032 -0.095816 -0.355242 0.154380 0.608799 0.674809 0.073234 1.653304 2.060060 -7.563870 -2.557212 2.350304 11.908047 -0.815841 2.471697 22.056047 -2.351642 -17.028824 3.059626 15.872387 -23.246794 -17.891459 9.994926 -25.295576 -16.630726 -90.056297 -61.521477 49.970879 21.031487 -34.317795 -13.115070 -0.034842 -0.041571 0.239237 0.121379 -0.272106 0.512454 -6.797518 34.856380 -19.077749 56.475948 57.286404 24.898460 0.848842 43.729294 -3.297004 -0.665992 -0.133079 -0.240759 0.686760 0.053617 0.199505 +7.558056 166.022339 -14.928993 5.156370 49.299538 13.119983 -1.497503 -2.198920 -12.268657 -2.729464 -0.327182 1.159377 -0.783565 0.555791 -0.023744 0.663726 0.532889 -0.048060 -4.328371 1.219764 -10.495923 8.310390 -1.310449 12.102896 -0.133338 -0.295499 0.140272 0.577394 0.610945 0.086199 1.366414 2.158886 -7.040232 -2.427647 2.258941 11.764637 -0.494538 2.209458 20.906759 -2.444399 -17.329126 4.586859 16.052788 -22.484980 -18.733454 9.007660 -25.980270 -16.963682 -86.752937 -58.920528 45.109226 13.114853 -35.913803 -9.907279 -0.009002 -0.092468 0.312361 0.079502 -0.204796 0.479826 -4.655673 36.298157 -18.884190 57.715847 52.779709 21.508251 7.616702 42.152321 -0.713929 -0.646352 -0.076203 -0.233521 0.669795 0.041403 0.162606 +7.403898 166.014511 -14.856607 5.713187 49.824459 13.451518 -1.743251 -2.458213 -12.548515 -2.618566 -0.363211 1.814877 -0.786483 0.525021 -0.054097 0.661560 0.515255 -0.009823 -4.868898 1.036621 -10.419855 9.133850 -1.507971 12.084392 -0.162641 -0.232021 0.127880 0.544656 0.556157 0.089013 1.125299 2.039922 -6.385442 -2.395841 1.977829 11.655608 -0.446087 1.867340 19.737991 -2.823179 -17.366270 6.628657 17.273310 -21.811930 -19.744745 8.735539 -26.703094 -17.844551 -84.353661 -56.155235 40.941517 4.522118 -34.931519 -6.049644 0.025305 -0.138276 0.387438 0.030916 -0.146052 0.449501 -1.636153 37.035191 -18.094498 59.075771 48.025200 17.861216 13.302143 39.757851 1.084397 -0.624654 -0.011383 -0.230898 0.656818 0.041508 0.134486 +7.308335 165.935120 -14.677050 6.056174 49.621754 13.558562 -1.633479 -2.515436 -12.523724 -3.137474 -0.346319 2.238423 -0.759760 0.460495 -0.074241 0.667497 0.518837 0.034681 -5.284434 1.105066 -10.308366 9.520355 -1.525271 12.103705 -0.192411 -0.162917 0.120529 0.511170 0.485184 0.083934 1.281461 1.884225 -5.767192 -2.425411 1.804386 11.461668 -0.875435 1.796514 18.503225 -3.681761 -17.133041 8.797185 18.042494 -21.308290 -20.588692 7.917057 -27.224052 -18.161848 -81.689880 -52.850731 36.326008 -3.390332 -32.716526 -2.646130 0.077336 -0.172603 0.441501 -0.024765 -0.082742 0.422332 0.328119 37.369125 -16.871666 60.195213 43.979336 15.223101 16.415321 36.569405 1.750872 -0.584668 0.040649 -0.207953 0.632627 0.021520 0.116506 +7.222530 165.790985 -14.424200 6.222787 49.329704 13.502449 -1.433889 -2.583524 -12.568765 -3.683424 -0.320416 2.849767 -0.720465 0.402833 -0.080576 0.651156 0.491172 0.055143 -5.537789 1.240691 -10.269406 9.959090 -1.563341 12.347569 -0.216733 -0.099602 0.118456 0.456482 0.427040 0.081281 1.626643 1.603362 -4.958027 -2.575586 1.579837 11.144292 -1.625325 1.762221 17.042660 -4.523530 -16.530920 10.625171 18.984337 -20.977682 -21.005888 5.460007 -28.200312 -17.344046 -77.952995 -49.019753 30.493645 -8.920753 -29.659513 -0.577901 0.128504 -0.197832 0.493621 -0.076991 -0.029937 0.401339 3.389914 37.707573 -14.546169 60.476727 39.951435 12.292974 17.520931 33.188557 1.663699 -0.540439 0.090417 -0.189045 0.602464 0.010152 0.103146 +7.257911 165.664780 -14.196741 6.068663 48.982750 13.092708 -1.275038 -2.676178 -12.624972 -3.994640 -0.311980 3.708781 -0.688832 0.333421 -0.100070 0.683049 0.515016 0.101976 -5.683858 1.390805 -10.201271 10.577806 -1.652842 12.895468 -0.253211 -0.046870 0.110512 0.435673 0.347642 0.086127 2.665548 1.094023 -4.339436 -2.886705 1.315713 10.892720 -2.841803 1.705405 16.039413 -5.164535 -15.548826 12.096003 19.783546 -20.322725 -21.678541 2.952286 -28.455566 -16.529682 -74.839020 -45.312260 25.573900 -12.479416 -25.392401 0.484022 0.196305 -0.187884 0.541870 -0.137517 0.031081 0.391990 5.444046 37.254150 -12.769888 62.033958 36.442944 10.233200 15.985066 29.018864 0.743560 -0.504401 0.107433 -0.153911 0.558445 -0.024636 0.087492 +7.231276 165.497192 -13.960865 5.475095 48.362885 12.382147 -0.824226 -2.812631 -13.001430 -3.978670 -0.307449 5.025348 -0.661843 0.300261 -0.109850 0.671723 0.496168 0.119168 -5.375193 1.652507 -10.291723 10.698443 -1.700049 13.704402 -0.273456 -0.010510 0.099592 0.399161 0.302346 0.096335 3.733293 0.557089 -3.720694 -3.145124 1.017859 10.615686 -3.931014 1.646758 15.080782 -5.588854 -14.606967 12.909463 19.854031 -19.796961 -21.773750 -0.130361 -28.346601 -15.149776 -71.731926 -41.652863 20.817795 -13.233912 -21.507406 0.455692 0.224275 -0.194925 0.574062 -0.171004 0.072025 0.372647 7.195993 36.783283 -10.976293 62.795464 33.251778 8.260902 13.735017 25.166000 -0.040252 -0.472748 0.135788 -0.134973 0.528030 -0.028566 0.077301 +7.105272 165.311066 -13.613081 5.365870 47.606838 11.957332 -0.538040 -3.057651 -13.304878 -4.192593 -0.304740 6.399856 -0.650173 0.252107 -0.115379 0.677482 0.490095 0.172096 -5.172139 1.813432 -10.405328 10.582556 -1.750540 14.726678 -0.299217 0.050152 0.097882 0.372158 0.239246 0.079847 3.885468 0.141295 -2.767048 -3.308509 0.747439 10.234798 -4.435966 1.553199 13.910095 -6.260769 -14.032915 14.104314 19.477415 -19.237778 -22.176252 -3.312828 -27.336796 -13.724944 -69.054184 -37.969772 16.503103 -12.997993 -18.359997 0.165917 0.270593 -0.237211 0.626109 -0.219446 0.119931 0.352479 8.999011 36.399685 -9.411306 63.235405 29.776789 6.474898 13.439345 20.425074 -0.066040 -0.444366 0.178019 -0.131684 0.520294 -0.051423 0.049051 +7.042147 164.932983 -13.228033 4.824483 46.797722 11.392849 -0.083983 -3.394823 -14.077321 -4.293402 -0.300665 8.456056 -0.634155 0.229818 -0.122591 0.656022 0.450906 0.187335 -4.734184 2.077147 -10.795070 10.579069 -1.847365 15.975374 -0.309027 0.081003 0.093228 0.329289 0.196039 0.084422 4.108383 -0.183911 -1.766162 -3.243842 0.505394 9.733383 -4.532923 1.434235 12.593848 -7.003399 -13.480977 14.350963 18.841665 -19.048658 -22.202625 -6.427839 -25.577593 -11.991044 -67.157104 -34.113861 12.289431 -11.049267 -17.101004 -0.551275 0.293133 -0.251012 0.659670 -0.247789 0.147469 0.329104 11.165059 35.918949 -7.724825 62.905212 26.482115 5.093244 12.972432 14.852954 0.108594 -0.419988 0.206679 -0.124221 0.491589 -0.048909 0.030095 +6.826192 164.504303 -12.779776 4.175603 45.557297 10.881368 0.448597 -3.728263 -15.026337 -4.297830 -0.260523 10.802460 -0.614247 0.221575 -0.113740 0.599972 0.372359 0.181538 -4.251351 2.433985 -11.365546 10.651768 -1.925857 17.210424 -0.291211 0.104595 0.103873 0.267363 0.181165 0.073371 4.026907 -0.312265 -0.623641 -3.172777 0.416439 9.113387 -4.541625 1.421509 11.086587 -7.507260 -12.729448 14.226683 18.121353 -18.877125 -21.256618 -9.175915 -23.504866 -10.361178 -65.151901 -30.284336 8.537227 -9.121081 -16.351141 -1.149289 0.294063 -0.280362 0.676108 -0.254043 0.142960 0.299431 13.987885 34.725685 -5.470861 61.839397 23.133219 3.524296 11.366380 10.243397 0.161910 -0.396158 0.240859 -0.135098 0.471649 -0.032325 0.010899 +6.506155 164.064133 -12.251725 3.412129 43.764992 10.115116 0.985803 -4.085879 -16.042143 -4.126146 -0.223476 13.661530 -0.613642 0.220927 -0.121255 0.561487 0.298364 0.202701 -3.609402 2.853647 -11.758275 10.677591 -1.968582 18.319479 -0.297043 0.129127 0.095936 0.211727 0.141164 0.080597 3.531725 -0.253081 0.892367 -3.065955 0.415709 8.368942 -4.364793 1.486223 9.405380 -7.611533 -12.066051 14.440909 17.307844 -18.250181 -20.697237 -11.348995 -20.444183 -9.172819 -63.677010 -26.558044 5.366391 -6.893565 -15.402795 -1.734634 0.302791 -0.301576 0.724223 -0.274390 0.163824 0.266954 15.546034 32.418419 -3.771429 61.089897 19.951551 2.112639 10.172945 6.662013 0.296893 -0.378721 0.272346 -0.147324 0.437777 -0.020333 -0.026765 +6.270269 163.501343 -11.728296 2.547572 41.254810 9.590787 1.434347 -4.510625 -17.496738 -3.671793 -0.182095 17.110561 -0.587604 0.239457 -0.098354 0.486555 0.185531 0.202223 -3.313914 3.312979 -12.456188 11.156573 -2.086648 19.510107 -0.268126 0.131424 0.100042 0.137139 0.139845 0.078573 3.180734 -0.130206 2.323437 -3.089445 0.572474 7.443666 -4.492903 1.658461 7.478240 -7.205336 -11.211704 13.523434 15.947338 -17.675100 -18.471857 -13.653336 -16.838743 -8.284184 -61.181000 -22.719866 2.679110 -5.590855 -13.611327 -1.902488 0.279948 -0.316662 0.723500 -0.259124 0.141694 0.232700 17.166412 29.084427 -2.380426 59.493000 16.912361 0.801035 8.886380 3.304665 0.423479 -0.351249 0.285523 -0.167323 0.403455 -0.000649 -0.052955 +5.913066 163.001617 -11.229018 1.213431 38.326046 8.412236 2.212956 -4.774106 -19.006292 -3.330813 -0.102043 21.463533 -0.549878 0.203116 -0.101125 0.470505 0.157558 0.225149 -2.369908 3.889864 -12.674294 11.299666 -2.080574 20.550905 -0.277710 0.143380 0.098707 0.092169 0.089359 0.094967 3.141000 -0.008211 4.258471 -3.003833 0.843278 6.515022 -4.620874 1.877322 5.577638 -6.824768 -10.422808 13.283290 14.911944 -16.659822 -17.575895 -14.880026 -12.994343 -7.629478 -59.113651 -19.071966 0.607224 -4.753996 -11.675690 -1.889405 0.294586 -0.296074 0.733408 -0.272156 0.167317 0.211889 16.979078 25.233715 -2.003001 58.096233 14.364386 -0.510373 7.698509 1.706884 0.453945 -0.324445 0.283107 -0.142486 0.343959 -0.012808 -0.072890 +5.397470 162.586990 -10.679737 -0.227933 35.157028 6.861727 3.194799 -4.878402 -20.666231 -2.867561 0.027170 26.923565 -0.537782 0.179553 -0.107601 0.476880 0.162012 0.263674 -0.870204 4.567334 -12.544567 11.073423 -1.961666 21.739981 -0.298687 0.157751 0.097679 0.076028 0.051865 0.112071 2.805073 0.195785 6.161027 -2.921648 1.150901 5.961303 -4.623248 2.137849 4.354261 -5.903542 -9.686723 13.038357 14.175903 -15.188299 -17.623960 -15.228307 -9.128397 -7.554036 -56.767712 -16.037092 -0.813273 -4.627177 -9.664286 -1.740720 0.297891 -0.300012 0.754379 -0.279758 0.202141 0.198200 15.820862 21.832270 -2.592506 56.321861 12.903458 -1.278687 6.751014 -0.140766 0.521406 -0.316811 0.291446 -0.127856 0.316180 -0.028892 -0.093567 +4.567258 162.272659 -10.177400 -1.307575 31.504532 5.101419 4.136148 -4.640971 -22.067869 -2.598397 0.350302 32.738289 -0.563362 0.161129 -0.127968 0.494197 0.179267 0.322679 0.685926 5.363585 -12.062779 10.674849 -1.765763 23.466158 -0.328965 0.191945 0.090683 0.080065 0.005377 0.112212 1.624512 0.736497 8.313964 -2.786476 1.541635 5.643032 -4.202678 2.522297 3.509857 -5.044995 -9.162097 13.436290 13.404222 -13.516983 -18.700151 -15.006967 -5.872342 -7.430754 -54.737816 -13.181705 -1.995807 -4.067081 -8.022627 -1.679808 0.306207 -0.344855 0.806030 -0.301548 0.248960 0.177105 14.090717 19.669712 -3.132192 53.779202 11.851755 -1.879015 6.290861 -1.316035 0.559270 -0.321668 0.327179 -0.136427 0.320980 -0.042366 -0.130047 +3.806163 162.113342 -9.799991 -2.539107 28.322392 2.833482 4.872251 -4.300162 -23.150055 -1.660327 0.401590 38.239227 -0.578022 0.133079 -0.154250 0.524875 0.209181 0.383968 2.411171 5.959274 -10.860471 10.297550 -1.562141 24.708605 -0.363893 0.226103 0.082705 0.082651 -0.050679 0.124605 1.081031 1.220703 11.061692 -2.509348 2.084770 5.352878 -3.891179 3.074405 2.609147 -4.580213 -8.891906 14.238051 12.953568 -12.245547 -20.158567 -15.471665 -3.481658 -7.349738 -52.073566 -10.683299 -2.900753 -3.261326 -6.653798 -1.618655 0.323486 -0.370119 0.855304 -0.329994 0.303045 0.157654 12.743415 17.718288 -3.151638 49.721561 10.354803 -2.680617 6.189994 -1.063249 0.490560 -0.322229 0.356002 -0.125303 0.309838 -0.060494 -0.160120 +3.116638 161.917282 -9.458108 -3.576508 25.685055 0.670709 5.226413 -4.126737 -24.746094 -0.384913 0.198002 44.123356 -0.585848 0.104052 -0.175516 0.532001 0.226030 0.414568 3.902846 6.359382 -9.497768 10.259862 -1.487704 25.945204 -0.382850 0.248775 0.077002 0.080979 -0.092923 0.126200 0.738732 1.671333 13.854104 -2.295930 2.724071 5.140554 -3.725916 3.717514 1.736037 -4.080506 -9.088213 14.627869 12.427448 -11.449990 -21.170031 -15.863491 -1.992991 -7.198258 -49.243698 -8.534172 -3.418180 -2.403185 -4.782040 -1.463233 0.332926 -0.390102 0.882469 -0.347846 0.337877 0.137207 11.418810 16.064615 -2.736591 45.485100 8.325389 -3.542760 5.982856 0.200104 0.376738 -0.320224 0.379267 -0.118529 0.299937 -0.067278 -0.180210 +2.539884 161.656021 -8.998959 -4.476938 22.734089 -1.434413 5.619981 -3.726193 -26.316362 0.458103 0.125947 49.857468 -0.585286 0.097488 -0.174620 0.529123 0.229392 0.428094 5.274849 6.652184 -7.818714 10.122679 -1.367846 27.086338 -0.384313 0.257991 0.081860 0.079427 -0.097722 0.123479 0.380052 2.073292 15.931518 -2.079429 3.274668 5.250958 -3.499412 4.270154 1.402892 -3.867792 -8.653831 14.407247 12.065282 -10.680009 -21.544882 -16.196476 0.124349 -7.140453 -46.873825 -6.247642 -4.067607 -1.032439 -3.984376 -1.395412 0.325300 -0.407583 0.885460 -0.344694 0.345540 0.129567 10.699325 14.104102 -3.202756 40.436977 7.522338 -3.815850 5.914464 0.539262 0.303880 -0.319828 0.391584 -0.121211 0.304949 -0.071017 -0.187362 +2.065509 161.339554 -8.460928 -5.093108 20.353559 -3.235485 5.517555 -3.530102 -28.271029 1.613774 -0.235199 55.886833 -0.548762 0.069867 -0.163076 0.533215 0.242867 0.429141 5.972101 6.726998 -6.121060 10.821815 -1.510506 27.929968 -0.387530 0.254599 0.086945 0.072083 -0.106932 0.128263 0.033118 2.417176 17.530741 -1.996534 3.811437 5.452229 -3.413073 4.751803 1.222151 -3.637442 -8.410713 13.970202 12.022425 -10.333411 -21.116890 -15.794313 2.174526 -6.808105 -45.186874 -4.069597 -4.732700 0.800223 -3.966060 -1.338225 0.334250 -0.376853 0.863421 -0.343209 0.350388 0.138062 9.464603 12.674188 -3.069733 35.959827 6.309332 -4.051636 6.294337 2.371308 0.220190 -0.304255 0.369474 -0.099351 0.280923 -0.090210 -0.178240 +1.482761 161.167542 -7.862010 -5.105045 17.429916 -5.118362 5.301467 -3.021235 -29.252670 2.287838 -0.272677 60.713123 -0.526412 0.040705 -0.153377 0.543770 0.266556 0.440963 6.468807 6.813415 -4.084388 10.750420 -1.387013 28.837938 -0.397870 0.267213 0.090966 0.075976 -0.116623 0.121134 -1.099141 3.081818 19.142580 -2.032782 4.302707 5.847382 -3.151303 5.194668 1.248127 -3.378396 -7.691559 13.719065 12.371578 -9.482788 -21.355881 -15.105375 4.480360 -6.642928 -43.629379 -1.998153 -5.356958 2.524998 -4.507165 -1.314576 0.348870 -0.370547 0.859371 -0.350891 0.364211 0.146919 8.503178 11.524672 -3.270375 31.654100 5.848723 -4.026677 5.530474 2.325818 0.206212 -0.291550 0.364538 -0.091793 0.278902 -0.112845 -0.174920 +1.038719 160.995148 -7.260876 -5.345058 14.688125 -6.975748 5.474342 -2.406427 -30.006945 2.088737 0.141902 64.787849 -0.519593 0.028243 -0.154257 0.555017 0.280568 0.453635 6.893890 7.053107 -2.387663 11.187949 -1.449732 30.159697 -0.403435 0.263138 0.089436 0.079694 -0.127255 0.124990 -1.460409 3.397153 20.199087 -2.119491 4.680070 6.417265 -3.262808 5.568897 1.606546 -3.255279 -7.043422 13.304834 12.098211 -8.700166 -21.440773 -14.071699 7.722288 -6.880201 -42.371433 -0.171041 -5.995424 3.715330 -6.530705 -1.455800 0.353388 -0.351580 0.856379 -0.351830 0.368961 0.148064 6.268089 10.051180 -3.797478 28.483416 5.984369 -3.853035 4.664458 0.974154 0.201976 -0.288708 0.349797 -0.084637 0.264350 -0.124614 -0.178977 +0.785386 161.005997 -6.642054 -5.648067 12.173503 -8.847096 5.375130 -1.763657 -30.022617 1.978590 0.499626 67.122322 -0.545612 0.079110 -0.150612 0.511550 0.204792 0.434366 7.434772 7.277781 -0.486197 11.442039 -1.431772 31.150515 -0.382807 0.266754 0.086399 0.052911 -0.094596 0.117976 -1.047283 3.538762 21.477217 -2.243210 5.087854 6.822426 -3.809104 6.064154 1.529290 -3.932249 -5.776592 13.389167 12.846866 -8.462846 -21.006618 -12.809849 10.142777 -6.662536 -41.667118 2.006035 -6.584204 6.149600 -7.207947 -1.508674 0.333018 -0.381019 0.882698 -0.345543 0.343357 0.133918 4.741908 8.771924 -3.687470 24.915491 5.407989 -3.852806 4.101911 0.939659 0.237225 -0.292536 0.379015 -0.127357 0.281774 -0.089107 -0.193621 +0.469341 161.051086 -5.990804 -5.553627 10.545307 -10.150057 4.915453 -1.486096 -30.243385 1.034615 1.266122 67.861649 -0.543040 0.082356 -0.129364 0.478734 0.184843 0.395283 7.701634 7.322996 1.120506 11.417393 -1.347143 31.755268 -0.360893 0.268556 0.106343 0.046299 -0.057175 0.089449 -0.601671 3.804550 21.464237 -2.410040 5.565807 7.625996 -4.264804 6.574021 2.422313 -4.367423 -5.561579 12.944975 13.121475 -8.732081 -20.762899 -11.872951 10.754381 -6.306997 -40.254539 3.484143 -6.836795 8.056922 -7.418377 -1.473992 0.321282 -0.411070 0.866785 -0.330668 0.315600 0.140275 4.001138 7.251029 -3.342404 21.593536 4.211805 -3.882658 2.409232 1.797303 0.239636 -0.295353 0.396028 -0.149704 0.316801 -0.075377 -0.180396 +0.169476 161.245056 -5.286876 -5.373340 9.269474 -11.470525 4.428051 -1.365638 -30.148535 -0.642694 2.402830 67.441689 -0.534814 0.107326 -0.118022 0.450683 0.145472 0.360703 8.120428 7.188668 2.995039 10.812201 -1.088163 31.921980 -0.344101 0.258554 0.111191 0.026410 -0.025023 0.093232 -0.100794 3.927018 21.314911 -2.640380 5.895441 8.416068 -4.807360 6.954647 3.320374 -4.931509 -5.015524 12.786389 13.782091 -9.102973 -20.026529 -10.843379 10.628262 -5.400447 -38.944599 5.289118 -7.127090 9.904167 -8.429241 -1.579623 0.306926 -0.404736 0.857221 -0.317638 0.292600 0.144280 3.611411 6.399340 -2.556140 18.077679 2.872836 -3.705589 1.466547 2.345926 0.274155 -0.293713 0.397912 -0.157386 0.318325 -0.054775 -0.169470 +-0.253318 161.462997 -4.527893 -5.086693 8.736547 -12.279838 3.726744 -1.454920 -30.136715 -2.490851 3.443774 65.184624 -0.528844 0.141864 -0.113646 0.416009 0.100414 0.310043 8.414451 7.136766 4.190736 10.623656 -0.981190 32.101711 -0.320516 0.236213 0.107548 0.007305 0.018829 0.103387 0.150617 4.007604 20.791025 -2.994122 6.005545 9.158159 -5.350822 7.082654 4.278436 -5.295396 -4.060397 11.986820 15.227148 -9.325465 -19.372549 -9.056774 11.164083 -4.787869 -37.750969 6.504941 -7.302257 11.679968 -9.863174 -1.795802 0.283280 -0.378539 0.840487 -0.298774 0.258260 0.143530 3.347882 5.020547 -2.222383 15.141552 2.119232 -3.431368 0.960813 2.482885 0.304130 -0.293330 0.391712 -0.164680 0.310879 -0.021655 -0.153889 +-0.707196 161.832962 -3.703665 -4.574328 8.190018 -13.558673 2.755128 -1.544344 -28.792286 -4.203548 4.239782 61.150776 -0.568483 0.195638 -0.121904 0.369375 0.036844 0.272950 8.547026 7.038483 6.083698 10.264359 -0.804472 32.223774 -0.292347 0.227951 0.105588 -0.006923 0.060853 0.095513 0.115850 4.215330 20.639395 -3.419868 6.087671 10.035092 -5.856781 7.230531 5.247694 -5.462580 -3.812564 11.649525 16.199734 -9.598606 -19.389700 -8.072838 11.716550 -4.692099 -36.073376 7.265125 -7.217174 14.116966 -11.897864 -2.226597 0.248184 -0.409151 0.855543 -0.281168 0.224145 0.125174 2.918489 4.261512 -1.706414 12.424563 1.498610 -3.087065 1.254789 1.707770 0.349793 -0.311587 0.422375 -0.206980 0.335070 0.026540 -0.162422 +-1.131265 162.227234 -2.939591 -4.255844 7.941957 -14.780095 1.861434 -1.673558 -27.223433 -6.228176 4.854126 55.953262 -0.587504 0.220829 -0.118198 0.356204 0.019289 0.270622 9.028520 6.898214 7.874267 10.045667 -0.652826 32.229458 -0.284912 0.230328 0.105408 -0.005869 0.083497 0.089263 0.510640 4.188280 20.285748 -3.885718 6.199993 11.005700 -6.553563 7.363367 6.472535 -5.153725 -4.140232 11.177868 16.760815 -9.684392 -19.926695 -7.825684 12.028406 -4.898031 -33.660114 7.600220 -6.873980 16.058943 -14.039983 -2.725705 0.229814 -0.434820 0.862424 -0.272607 0.213473 0.119740 2.425594 3.497288 -1.279037 10.274022 0.985408 -2.698193 2.102755 0.730417 0.348464 -0.320857 0.439757 -0.229002 0.359924 0.040118 -0.166117 +-1.520667 162.671402 -2.051301 -4.133640 7.775108 -16.066874 1.016259 -1.680784 -24.754183 -7.782279 4.954781 49.632782 -0.602724 0.231635 -0.125577 0.334359 -0.002994 0.252413 9.620517 6.863173 9.653393 10.166613 -0.585444 32.524147 -0.275121 0.229829 0.100303 -0.009738 0.090823 0.078906 0.596255 4.280644 20.244202 -4.089829 6.214974 11.609694 -6.775900 7.392162 7.049859 -5.379565 -4.175507 11.369206 16.904623 -9.879606 -19.786856 -7.276313 12.442415 -4.864797 -32.285316 8.225782 -6.806865 19.245926 -15.601656 -3.279148 0.223029 -0.447532 0.868091 -0.271488 0.203065 0.109887 1.792449 3.360036 -0.724649 8.254638 0.454911 -2.409374 2.880080 -1.335449 0.300510 -0.323989 0.452285 -0.246231 0.368112 0.059046 -0.170111 +-1.838051 163.000549 -1.170230 -3.991011 7.566072 -16.811357 0.015242 -1.759893 -22.646992 -8.783721 4.611768 42.975014 -0.600023 0.228006 -0.119236 0.335753 -0.004177 0.258429 10.054263 7.056480 10.484654 10.304205 -0.518566 33.243122 -0.275476 0.240011 0.098153 -0.008033 0.091124 0.066278 0.856621 4.318690 19.646355 -4.427507 6.256151 12.018683 -7.213134 7.389434 7.654943 -5.540719 -3.978971 11.650670 17.325384 -9.919218 -19.608664 -5.986817 13.069184 -4.650084 -31.265684 8.768179 -6.832482 21.656338 -17.152130 -3.848125 0.233543 -0.453307 0.870992 -0.279542 0.202209 0.112996 0.894782 2.747542 -0.364839 7.325491 -0.062510 -2.233165 3.256404 -1.812000 0.276014 -0.316195 0.453849 -0.253969 0.376768 0.052224 -0.170688 +-2.069604 163.063599 -0.239760 -4.126831 7.794203 -16.931412 -0.838905 -1.945436 -20.907887 -9.649115 4.012560 36.095867 -0.586681 0.242247 -0.101813 0.333547 -0.021901 0.247374 10.426807 7.294118 10.473509 10.715249 -0.609220 34.109272 -0.272744 0.220915 0.097301 -0.015245 0.106236 0.071910 1.288474 4.161274 18.749071 -4.554429 6.068383 11.918659 -7.490805 7.137002 7.757003 -5.724540 -3.703621 11.876848 17.202044 -10.260029 -18.103973 -4.190076 14.253014 -4.313207 -30.333218 9.290280 -6.741004 22.727171 -18.430447 -4.210660 0.236752 -0.424085 0.858514 -0.272035 0.187165 0.131754 -0.457903 1.925927 -0.257216 6.762671 -0.182746 -2.122958 3.273176 -2.112386 0.259466 -0.312003 0.424635 -0.254839 0.365665 0.047466 -0.163797 +-2.287521 162.974655 0.670188 -4.472632 8.186842 -17.068024 -1.681443 -2.192682 -19.145027 -10.050715 3.262365 29.829958 -0.580924 0.220266 -0.092879 0.369760 0.015570 0.270284 10.700032 7.579958 10.174514 11.769273 -0.956435 35.226055 -0.285394 0.215500 0.102202 0.004025 0.089943 0.066559 1.851078 3.906550 17.835476 -4.600837 5.890313 11.957416 -7.671165 6.931386 8.162291 -5.633642 -3.869373 11.850266 16.729771 -10.200115 -17.948910 -3.339663 14.925987 -4.434889 -29.188829 9.280815 -6.522336 25.171671 -19.160498 -4.643772 0.260612 -0.400930 0.853417 -0.279848 0.191324 0.151523 -1.802044 0.956153 -0.305770 6.092908 -0.285560 -1.983551 3.251094 -2.641173 0.214050 -0.314547 0.392826 -0.245236 0.359221 0.016158 -0.165461 +-2.406758 162.612686 1.605807 -5.273454 8.759889 -16.899858 -2.325442 -2.321586 -17.611217 -9.977678 2.435954 23.767332 -0.583020 0.220507 -0.083728 0.361795 0.016042 0.254268 11.224492 7.864279 9.390880 13.273502 -1.518406 36.308239 -0.274971 0.206743 0.115033 0.010522 0.109031 0.050706 3.165966 3.297576 16.746153 -4.833251 5.644050 11.693574 -8.450964 6.624115 8.286426 -5.066832 -3.607091 12.068057 16.789845 -9.951369 -16.948109 -2.176359 15.778897 -4.120201 -27.414852 9.957491 -6.149684 26.460249 -20.542669 -5.067749 0.252733 -0.407751 0.841299 -0.264546 0.175027 0.162073 -3.061572 0.003088 -0.553859 5.996947 -0.045110 -1.955649 3.121947 -3.069754 0.191597 -0.323283 0.387458 -0.258793 0.372885 0.015049 -0.162605 +-2.570024 162.004578 2.745764 -5.823000 9.023178 -16.107115 -3.114632 -2.334603 -16.552248 -9.486646 1.767136 18.535543 -0.586465 0.239557 -0.066767 0.340895 0.002554 0.236150 11.608273 8.240806 8.167039 14.639769 -2.008888 37.219173 -0.244436 0.195399 0.129728 0.019045 0.144947 0.024487 3.615959 3.252626 14.353859 -4.823358 5.471860 11.435597 -8.546617 6.525540 8.967821 -4.747459 -3.621076 12.051307 16.356836 -10.078753 -15.634142 -1.407556 16.463936 -3.780350 -25.572245 11.023976 -5.787002 27.796854 -22.104076 -5.580411 0.226584 -0.429262 0.807359 -0.235593 0.138073 0.165091 -3.407697 -1.064206 -1.018846 4.634058 0.453520 -1.711582 3.157428 -3.292393 0.142838 -0.330055 0.384666 -0.281421 0.401913 0.022230 -0.156269 +-2.701938 161.330673 3.853200 -6.460461 9.240113 -15.371279 -3.561190 -2.234961 -15.754445 -9.184750 1.340235 14.598996 -0.591596 0.238616 -0.074665 0.342567 0.025995 0.220906 11.966275 8.574569 6.935697 16.050371 -2.548697 38.008537 -0.231573 0.179489 0.127971 0.042171 0.156777 0.015269 4.535338 3.111742 11.601721 -4.877549 5.408737 11.400077 -8.911553 6.609269 10.182840 -4.239476 -3.753650 12.304109 16.287533 -10.061085 -15.114967 -1.045628 16.588171 -3.591037 -23.517746 11.893268 -5.349704 29.385859 -22.672020 -5.911297 0.210626 -0.420950 0.777305 -0.219133 0.121203 0.163044 -3.712678 -2.101429 -1.395728 3.350409 0.689741 -1.434433 3.358288 -3.473799 0.085072 -0.338465 0.371201 -0.279711 0.408401 0.027977 -0.147176 +-2.907429 160.675476 4.802375 -6.810372 9.275526 -15.355342 -3.931231 -2.122959 -14.697793 -9.139399 1.159144 12.435735 -0.570536 0.196972 -0.066574 0.386659 0.095302 0.240252 12.099261 8.897943 6.390271 17.576565 -3.165321 39.007683 -0.251564 0.187064 0.139145 0.070132 0.141384 0.011566 4.882299 3.023941 9.901226 -4.852162 5.337343 11.577704 -8.958626 6.600912 11.189610 -4.053915 -3.954886 12.654314 16.261168 -9.924858 -15.537534 -0.587312 16.302937 -3.170566 -22.000633 12.982309 -5.143117 30.010637 -22.280674 -5.793110 0.234604 -0.409866 0.764058 -0.227618 0.142593 0.187401 -4.055399 -2.499152 -1.299668 2.119795 0.429654 -1.166324 3.541401 -3.541464 0.042051 -0.336532 0.353557 -0.254124 0.413109 -0.010322 -0.133254 +-3.139224 160.038803 5.561710 -6.669817 9.652380 -15.728880 -4.499605 -2.291588 -14.128936 -9.495353 1.221258 12.546248 -0.552937 0.164668 -0.059256 0.414982 0.141496 0.263696 11.617004 9.110893 6.263068 19.087206 -3.937845 40.179920 -0.253824 0.197457 0.158306 0.086927 0.129370 0.001806 4.488379 3.002986 9.375340 -4.834395 5.191481 11.796747 -8.757939 6.424351 11.727263 -3.739225 -4.088414 12.754100 15.967181 -9.654363 -15.645126 -0.089609 15.987109 -3.053134 -20.490063 13.025313 -4.758587 30.259727 -21.178267 -5.408865 0.243799 -0.416562 0.747185 -0.225891 0.151635 0.196645 -4.446105 -2.732316 -1.197526 1.270329 0.162522 -1.006136 3.400819 -3.779029 0.008734 -0.334872 0.347403 -0.236856 0.417840 -0.040635 -0.128409 +-3.428349 159.475601 6.144428 -6.032451 9.876884 -16.616261 -4.996894 -2.444383 -13.455304 -10.543872 1.508445 13.736222 -0.513213 0.117958 -0.057877 0.432978 0.185026 0.268405 10.887471 9.295085 6.745805 20.079943 -4.566698 41.559490 -0.268517 0.199890 0.155451 0.092760 0.102950 0.009131 3.859790 2.859071 10.205362 -5.215463 5.088456 12.065938 -8.967978 6.137178 11.686544 -3.472038 -4.360729 12.366304 15.827411 -9.488283 -15.909581 -0.003556 15.518715 -3.015717 -18.173122 13.000220 -4.203537 30.487890 -19.424179 -4.788542 0.264949 -0.383947 0.724507 -0.236084 0.174683 0.204792 -4.277845 -2.476399 -0.903966 0.835400 -0.360045 -0.924176 2.730377 -3.356227 0.044024 -0.314029 0.326410 -0.200417 0.392245 -0.066848 -0.111943 +-3.682288 159.016922 6.581068 -5.551052 9.878587 -17.501078 -4.845501 -2.537252 -13.493332 -11.813136 1.986752 16.000912 -0.492978 0.098405 -0.046346 0.439015 0.189605 0.260722 10.277125 9.390698 7.223122 21.047129 -5.237915 42.820995 -0.277432 0.201850 0.158928 0.086599 0.099001 0.008465 2.762301 2.987737 11.206544 -5.156317 4.976137 12.254649 -8.437346 5.901616 11.419457 -3.573648 -4.205540 12.035791 16.597221 -9.643493 -15.806314 0.703397 14.689911 -2.570893 -17.622530 12.990817 -4.139852 30.650360 -18.257814 -4.419649 0.289771 -0.362214 0.728043 -0.248031 0.180494 0.222484 -3.701504 -1.919399 -0.251441 -0.229506 -1.340169 -0.773066 2.409193 -2.807476 0.081000 -0.303515 0.312764 -0.193625 0.380727 -0.082580 -0.104205 +-3.893998 158.568985 6.966792 -4.929891 9.488955 -18.203884 -4.374753 -2.442448 -13.616536 -13.454579 2.611083 17.959927 -0.514775 0.121368 -0.062201 0.439389 0.175490 0.287939 9.826928 9.542854 7.654323 21.269226 -5.587439 44.119705 -0.279158 0.200912 0.144325 0.084202 0.082448 0.025800 1.578688 3.293712 11.785263 -5.032387 4.914522 12.684107 -7.779404 5.887495 11.745414 -3.241165 -5.044104 11.124470 15.849629 -9.586782 -16.922413 0.453727 14.212224 -2.916010 -16.196539 12.211713 -3.703997 29.969469 -17.242598 -4.093431 0.271847 -0.369436 0.740453 -0.247855 0.186755 0.196897 -3.718600 -1.895893 0.084661 -0.592408 -1.914284 -0.630470 2.649701 -2.121696 0.100070 -0.310996 0.321019 -0.194241 0.371055 -0.070079 -0.123736 +-3.979040 158.242630 7.281065 -4.576007 8.706415 -18.530401 -3.584489 -2.097750 -13.497498 -14.935224 3.097521 18.574690 -0.521081 0.121746 -0.063135 0.434012 0.176286 0.287586 9.717605 9.692623 7.891283 21.109074 -5.654881 45.152569 -0.268262 0.193425 0.145458 0.091038 0.083881 0.015469 0.982511 3.662735 12.186826 -4.826372 5.090731 12.834388 -7.313937 6.037491 11.749137 -3.035353 -4.881558 10.555465 15.230491 -9.235505 -16.684244 0.394961 13.954680 -3.416221 -15.286575 10.527269 -3.318347 29.636141 -16.606667 -3.922671 0.262765 -0.371829 0.727575 -0.238874 0.174062 0.190039 -3.584359 -2.293776 0.217537 -0.775149 -2.474589 -0.462050 2.933989 -1.096669 0.106055 -0.314221 0.315177 -0.201086 0.373615 -0.067791 -0.127781 +-4.046525 158.050903 7.495108 -4.728564 8.062548 -18.326052 -2.658056 -1.862699 -13.731881 -15.715814 3.277472 18.571857 -0.538020 0.158503 -0.057617 0.431562 0.152943 0.296664 10.045768 9.655723 7.644972 20.876585 -5.667818 45.662395 -0.261336 0.184374 0.145326 0.089048 0.103409 0.023173 1.339209 3.571880 12.295890 -4.946685 5.165821 12.674780 -7.660355 6.102020 11.527073 -2.805838 -4.561454 9.957518 15.306567 -8.992541 -16.592108 0.786733 13.993357 -3.709794 -14.286946 8.952341 -2.837391 28.665321 -16.804798 -3.933703 0.243113 -0.377100 0.733552 -0.226125 0.159843 0.188638 -3.508577 -2.782237 -0.131474 0.263298 -2.266652 -0.607973 2.883276 -0.491513 0.123234 -0.325678 0.314343 -0.217065 0.381197 -0.059061 -0.137099 +-4.140383 158.089508 7.484550 -4.895236 7.432902 -17.854683 -2.113874 -1.748330 -13.805694 -15.552965 3.098426 17.744396 -0.499506 0.114727 -0.035493 0.438645 0.184729 0.282994 10.561412 9.551908 7.204821 20.163866 -5.389934 46.087952 -0.255190 0.182641 0.156341 0.101020 0.106092 -0.004834 1.377042 3.508867 12.480667 -4.967859 5.230163 12.347021 -7.737837 5.998957 11.026372 -2.667446 -3.880090 9.767068 15.675796 -8.730340 -15.417990 1.133555 13.875749 -3.730793 -14.355453 7.654456 -2.759485 28.763899 -17.518848 -4.125731 0.269161 -0.352353 0.697577 -0.227401 0.149859 0.212410 -2.973618 -2.897520 -0.396360 1.103943 -2.022044 -0.677411 3.001562 -0.240137 0.089109 -0.304632 0.283507 -0.209004 0.379361 -0.090245 -0.116526 +-4.167020 158.272018 7.312718 -5.474507 7.057204 -17.512535 -1.687398 -1.742356 -13.658428 -14.894259 2.706068 16.541752 -0.495791 0.114264 -0.023061 0.427961 0.171091 0.262201 11.342493 9.234778 6.946210 19.550903 -5.158121 45.869450 -0.249277 0.164995 0.170132 0.093401 0.118133 -0.009661 1.798280 3.362192 13.147634 -4.674337 5.177801 11.889111 -7.586560 5.886666 10.112708 -2.821289 -3.283498 9.898936 15.097484 -8.465652 -14.126748 1.029614 13.545817 -3.816471 -15.260507 6.508913 -2.838840 29.547970 -18.949345 -4.683426 0.270714 -0.341940 0.692529 -0.215772 0.135852 0.228733 -2.872077 -3.019885 -0.337296 2.468552 -2.573386 -0.929480 2.518557 0.383905 0.109882 -0.310458 0.267723 -0.217600 0.374737 -0.092460 -0.115118 +-4.255490 158.591217 7.080715 -5.525690 6.643189 -16.781773 -1.739013 -1.828545 -13.588310 -14.104346 2.258789 14.864264 -0.498152 0.119066 -0.023439 0.428673 0.170815 0.263698 11.382758 8.901643 6.531032 18.890930 -4.876945 45.151787 -0.253825 0.156564 0.166454 0.094393 0.117203 -0.001975 1.698232 3.400842 13.139298 -4.583563 5.124149 11.549253 -7.427307 5.820834 9.700743 -2.909871 -3.053829 10.202699 14.552790 -8.203836 -13.751229 1.219036 13.474152 -4.119719 -16.445009 4.803295 -2.917284 29.472849 -19.894625 -5.070312 0.267972 -0.338880 0.694202 -0.211910 0.140027 0.231273 -2.926183 -3.471682 -0.689204 4.793883 -2.590908 -1.346429 2.217576 0.814022 0.112270 -0.311758 0.261684 -0.217550 0.370002 -0.093555 -0.116016 +-4.275052 158.914322 6.783090 -5.611749 6.028143 -15.916254 -1.954579 -1.867604 -13.460104 -13.062427 1.765702 12.707577 -0.515330 0.148724 -0.025044 0.411756 0.147614 0.271001 11.490089 8.564092 6.122901 17.992548 -4.464954 44.180592 -0.253084 0.158921 0.169666 0.083305 0.128684 0.010883 1.636103 3.406329 13.129486 -4.443459 4.975444 11.189629 -7.216844 5.715500 9.268760 -2.622431 -3.128877 10.111777 13.734401 -7.724998 -14.168811 0.922523 13.521897 -4.463075 -17.292879 3.709733 -2.923253 28.915710 -21.382702 -5.532259 0.233529 -0.374101 0.704379 -0.195574 0.142817 0.216052 -3.052137 -3.872083 -1.161016 7.203297 -2.304205 -1.821709 1.787751 1.143558 0.125811 -0.326457 0.289703 -0.226884 0.385336 -0.072945 -0.127077 +-4.333601 159.203186 6.425268 -5.793404 5.034198 -14.978838 -1.817959 -1.641853 -13.311058 -12.262595 1.359153 10.131037 -0.495148 0.144533 -0.022228 0.428027 0.171063 0.303682 11.463897 8.376217 5.533312 17.434933 -4.198422 43.530918 -0.261829 0.150629 0.174898 0.082494 0.114929 0.040429 0.630329 3.872684 12.953299 -3.687336 4.864581 10.882153 -5.875412 5.628141 8.981506 -1.851942 -3.682354 9.725750 12.149154 -7.123487 -14.332967 -0.194883 13.913610 -5.201725 -18.561829 2.385224 -2.992951 28.892714 -23.348284 -6.170388 0.210860 -0.367843 0.682539 -0.176941 0.160753 0.210733 -3.146991 -4.473629 -1.666033 8.737342 -1.890279 -2.024049 1.897110 1.376961 0.097880 -0.326871 0.279169 -0.195067 0.366087 -0.087691 -0.126955 +-4.335764 159.504257 5.962725 -6.056501 4.317076 -14.044091 -1.841374 -1.586961 -13.457497 -11.196698 0.991095 8.074436 -0.490393 0.146872 -0.026956 0.444629 0.180284 0.342418 11.092835 8.019511 4.849185 17.630259 -4.340019 42.492218 -0.278549 0.143104 0.174461 0.076181 0.091871 0.073083 -0.359603 4.231621 12.956341 -2.881751 4.618248 10.394810 -4.477184 5.408149 8.407340 -1.154337 -3.624262 9.796670 10.514549 -6.032311 -14.355914 -0.925410 13.901865 -5.417738 -20.188593 1.606490 -3.137655 28.223068 -25.602871 -6.777121 0.196185 -0.360462 0.686601 -0.167378 0.184548 0.204213 -3.157259 -5.153779 -2.180488 11.304285 -1.971972 -2.651613 -0.129108 2.851939 0.085543 -0.331694 0.271134 -0.174107 0.340289 -0.099098 -0.141155 +-4.265573 159.766876 5.346015 -6.426638 3.536702 -13.586271 -1.945859 -1.582665 -13.331447 -9.689974 0.632015 6.213453 -0.470395 0.102348 -0.048291 0.466405 0.200744 0.366441 10.910153 7.551595 4.636722 17.629892 -4.397682 41.544319 -0.299257 0.150129 0.157674 0.070936 0.033515 0.084942 -0.534407 4.211211 14.273615 -2.380306 4.423529 9.663254 -3.860014 5.113439 7.002732 -1.014222 -2.874205 10.240171 10.420996 -5.094820 -14.366950 -1.235526 13.494546 -5.240668 -21.792099 0.956805 -3.356978 27.958836 -27.097466 -7.202539 0.233332 -0.313191 0.699692 -0.197356 0.214318 0.196125 -2.577214 -5.349192 -2.378464 14.041695 -2.504968 -3.431460 -2.565401 4.379806 0.022432 -0.311519 0.248779 -0.145534 0.285337 -0.120281 -0.154062 +-4.198506 159.976089 4.694472 -7.111927 2.733611 -12.768071 -1.623541 -1.522498 -13.890051 -8.352998 0.378807 4.952783 -0.450083 0.091897 -0.062484 0.493507 0.225836 0.378559 11.236578 7.084146 4.047431 17.564560 -4.421905 40.534851 -0.321440 0.137019 0.140104 0.070200 0.011470 0.125927 -0.194313 4.178257 14.585880 -1.791273 4.375157 9.218682 -3.322288 5.068130 6.408412 -0.799754 -2.438090 10.195643 10.786695 -4.700784 -14.650027 -1.472904 12.910835 -5.800559 -23.600740 -1.389718 -3.381789 27.297716 -26.758974 -7.163976 0.240964 -0.255909 0.697913 -0.205029 0.237606 0.198226 -2.048752 -5.800371 -2.739186 16.061876 -2.447714 -3.813282 -2.833793 4.235734 0.012486 -0.304081 0.220733 -0.106104 0.239204 -0.129378 -0.148072 +-4.062976 160.074249 3.919719 -7.842191 1.821958 -11.850981 -1.344640 -1.537237 -14.852860 -6.840158 0.192858 4.260090 -0.470127 0.104994 -0.068153 0.518332 0.244448 0.396797 11.346648 6.684801 3.279359 18.139788 -4.707869 39.552475 -0.333094 0.129464 0.131481 0.089450 0.011423 0.135001 0.763873 4.111154 14.052859 -1.389540 4.523220 9.240656 -3.171785 5.271646 6.775806 -0.507326 -2.363046 9.887308 11.086481 -4.533690 -15.255362 -1.711168 11.937687 -6.742143 -24.926035 -4.446634 -3.197478 25.960289 -25.971628 -6.959079 0.241144 -0.246440 0.709604 -0.207264 0.241889 0.204043 -1.741394 -6.143349 -3.013689 17.872826 -2.106651 -3.922175 -1.163330 3.032800 0.037642 -0.317028 0.209550 -0.109558 0.242839 -0.134966 -0.154173 +-4.002143 160.271332 2.955624 -8.507977 1.138346 -11.368317 -1.176508 -1.626343 -15.616118 -5.140998 0.044430 4.068170 -0.492683 0.103531 -0.081990 0.531865 0.244946 0.427342 11.428002 6.171286 2.768709 19.046562 -5.170203 38.563126 -0.349212 0.143883 0.119972 0.093479 -0.014539 0.133957 1.787275 3.758174 14.483984 -1.229457 4.507627 9.122309 -3.388549 5.265185 6.605910 -0.015911 -2.415135 10.400638 11.310843 -4.113503 -15.783969 -2.181336 9.796334 -6.965028 -25.545555 -6.310042 -3.187025 24.959631 -25.215872 -6.821713 0.256305 -0.257824 0.746413 -0.227078 0.261342 0.195915 -1.265792 -5.382290 -2.575724 21.292364 -2.632297 -4.571605 -1.560523 3.144281 0.037535 -0.320099 0.219349 -0.121027 0.240424 -0.141356 -0.177148 +-4.049554 160.403305 2.072108 -8.633756 -1.573110 -11.131506 -0.203922 -1.224436 -15.803123 -4.197039 0.004062 3.513190 -0.502556 0.082074 -0.103136 0.571505 0.289076 0.465337 11.485034 6.254771 2.735065 18.980968 -4.991551 38.182899 -0.375473 0.153498 0.109329 0.114425 -0.051667 0.143695 1.708814 4.016927 14.783199 -1.004399 4.721136 9.165123 -3.098986 5.446383 6.684872 0.168611 -1.713058 11.103239 11.074471 -3.057301 -16.518053 -2.915517 8.498285 -7.275072 -26.412558 -7.560674 -3.246636 24.463438 -24.882555 -6.837063 0.275801 -0.246606 0.768323 -0.246557 0.293801 0.195718 -0.038173 -4.175982 -3.132375 23.756567 -1.008345 -4.766864 -2.484317 2.362930 0.049244 -0.322589 0.214022 -0.107409 0.227608 -0.161461 -0.190197 +-3.982683 160.382217 1.110609 -8.537161 -5.603940 -10.895358 1.388055 -0.640032 -16.175356 -4.060088 0.036970 3.348687 -0.530282 0.083468 -0.127672 0.593581 0.317036 0.492598 11.600969 6.851070 2.496194 18.122404 -4.475215 38.860382 -0.389137 0.151589 0.102064 0.134564 -0.073257 0.155409 1.672062 4.506456 14.977209 -0.909994 5.174288 9.396465 -2.968445 5.891224 7.051129 0.448807 -0.948838 11.272614 10.081798 -1.760068 -17.441475 -4.506136 7.173597 -7.921355 -26.435722 -8.692410 -3.251347 24.333052 -24.820116 -6.956473 0.265957 -0.252267 0.784387 -0.246645 0.311669 0.183596 1.465188 -3.019612 -3.733973 25.382353 0.768599 -4.717405 -2.609383 3.173218 -0.046670 -0.340359 0.218296 -0.104868 0.225037 -0.160753 -0.208198 +-3.846908 160.344986 0.065614 -8.669955 -8.889622 -11.010361 2.918513 -0.311682 -16.804071 -3.715788 0.060996 4.770159 -0.563680 0.084882 -0.158341 0.642437 0.361210 0.553384 11.842121 7.214280 2.396221 17.341831 -4.117503 39.610577 -0.419174 0.146923 0.080880 0.165016 -0.119036 0.180379 1.583976 4.852439 15.092634 -0.438878 5.399742 10.036619 -2.262841 6.173857 8.026983 0.872611 -0.598690 11.179655 8.533089 -0.450847 -18.925381 -6.853514 5.159647 -8.631979 -26.402456 -9.910235 -3.360875 24.437632 -25.717844 -7.433562 0.267544 -0.238903 0.809897 -0.258282 0.344903 0.172067 2.978642 -1.577064 -4.083611 25.788862 2.369560 -4.421221 -1.979339 4.469774 -0.160062 -0.357317 0.204773 -0.093568 0.207167 -0.175287 -0.236513 +-3.785211 160.255768 -0.939924 -8.528865 -11.782388 -11.195033 4.459744 -0.110428 -17.892426 -3.735615 0.167769 7.501095 -0.599703 0.106453 -0.172358 0.657286 0.377027 0.600818 12.099599 7.397387 2.463532 15.885890 -3.528864 40.273319 -0.426225 0.145770 0.070183 0.189493 -0.133071 0.184561 0.915948 5.305832 14.975981 -0.037992 5.541575 10.677609 -1.368023 6.343130 9.082764 1.788709 -0.880840 11.040250 6.904176 0.548386 -19.768591 -9.620966 2.947673 -9.533632 -25.201527 -11.288460 -3.407972 24.132675 -27.396652 -7.948968 0.239935 -0.269987 0.818005 -0.246933 0.356549 0.153252 5.349040 0.007910 -4.450488 25.759266 3.802063 -4.170220 -1.572287 6.403039 -0.322354 -0.375529 0.212634 -0.106757 0.222181 -0.176610 -0.262144 +-3.557226 160.112869 -1.870080 -8.460671 -14.527918 -11.673638 6.337739 0.072293 -19.120441 -4.539550 0.399319 11.629545 -0.622813 0.106341 -0.195881 0.685742 0.414705 0.629621 12.305518 7.433043 2.855242 14.219005 -2.873035 40.789646 -0.441972 0.146645 0.053224 0.217805 -0.153457 0.192429 0.884196 5.316093 15.401406 0.188066 5.599452 11.225707 -1.031792 6.389999 9.863536 1.962904 -0.619630 11.305351 6.481837 1.201231 -20.698587 -12.037810 0.462215 -10.103388 -24.030695 -12.430778 -3.561134 23.659901 -29.257032 -8.453406 0.235837 -0.268050 0.825987 -0.253056 0.374124 0.143284 8.291071 1.970936 -4.981664 25.244617 5.533561 -3.994895 -1.858768 8.133864 -0.502231 -0.386510 0.211124 -0.100760 0.223942 -0.178936 -0.272788 +-3.196674 159.876678 -2.811517 -8.202033 -17.271656 -12.029581 8.168844 0.142976 -20.848936 -5.765432 0.832474 16.946722 -0.678158 0.145943 -0.222460 0.700551 0.408424 0.675796 12.332624 7.529608 2.954453 12.540421 -2.259396 41.437984 -0.448535 0.144590 0.036579 0.232147 -0.167545 0.204412 0.344542 5.466733 15.686317 0.592577 5.489139 11.656077 -0.191052 6.344524 10.536777 1.996294 -0.162407 11.627958 5.226803 2.072626 -21.464582 -13.769635 -2.252175 -10.151012 -23.997086 -13.259304 -3.765440 22.946787 -30.919790 -8.927555 0.211025 -0.295198 0.858036 -0.249756 0.380503 0.116691 10.503650 4.041214 -5.526779 24.693262 7.500402 -3.864114 -1.800703 9.561327 -0.632198 -0.411608 0.225655 -0.119966 0.231962 -0.163862 -0.308462 +-2.780333 159.780212 -3.829581 -7.493930 -20.085546 -12.756677 9.833111 0.131750 -22.539646 -7.500815 1.534848 22.963163 -0.689699 0.155924 -0.238336 0.724115 0.436334 0.693573 11.932456 7.729371 3.050954 10.584814 -1.494938 42.297615 -0.465228 0.136853 0.027093 0.248603 -0.173967 0.228126 -0.365394 5.540658 16.634020 0.781927 5.382965 11.937026 0.315444 6.206819 10.709776 1.702091 0.962741 12.321740 4.547072 3.029237 -21.655489 -15.226779 -4.632668 -10.294576 -23.944445 -14.416365 -3.948618 22.693195 -31.371840 -9.148130 0.198781 -0.288318 0.862737 -0.244923 0.398923 0.116980 12.859879 6.237404 -6.419742 24.072592 10.100929 -3.650813 -1.070169 10.362658 -0.666614 -0.422411 0.222532 -0.106768 0.228769 -0.163415 -0.310463 +-2.403623 159.867004 -4.829451 -6.744398 -22.626949 -13.503515 11.471275 0.112351 -24.025383 -9.662679 2.541649 28.939156 -0.706735 0.150195 -0.262449 0.763716 0.479853 0.726663 11.914480 7.862225 3.132725 8.254448 -0.520064 42.922150 -0.489629 0.133154 0.010901 0.274273 -0.200378 0.245752 -1.220822 5.615343 17.529762 0.933697 5.239964 12.212817 0.846218 6.006251 10.912934 1.484120 2.219348 13.229385 3.987791 4.196107 -22.047091 -15.953197 -6.503157 -10.496484 -24.116835 -15.854611 -4.032582 22.157085 -32.495907 -9.432555 0.204493 -0.271942 0.877351 -0.253995 0.424459 0.115734 14.681398 8.250980 -7.425218 24.198839 12.861330 -3.409259 0.455122 11.024898 -0.605893 -0.431157 0.210858 -0.092617 0.216975 -0.174109 -0.320899 +-1.957768 159.956421 -5.777781 -5.753385 -24.796505 -14.087120 12.781827 -0.207441 -25.675493 -12.218158 3.856990 34.823349 -0.728402 0.145072 -0.285555 0.798853 0.520402 0.758505 11.549994 7.961546 2.747579 5.990807 0.354238 43.553497 -0.509133 0.132643 0.000493 0.298837 -0.223943 0.257642 -1.953511 5.594425 18.223082 0.937189 5.056224 12.397540 1.186916 5.778185 11.090706 1.037798 3.244866 14.073717 3.185899 5.111345 -22.634178 -16.179165 -8.301425 -10.830832 -24.511190 -17.792847 -3.967719 20.699020 -33.894817 -9.485025 0.208119 -0.270920 0.892861 -0.261299 0.447494 0.112228 16.211451 10.084715 -8.288543 25.085737 15.262400 -3.263641 1.651075 12.056154 -0.578516 -0.441781 0.208540 -0.083026 0.214279 -0.182551 -0.331225 +-1.442752 160.134232 -6.668283 -4.659774 -26.503271 -14.570338 13.707999 -0.876459 -27.343254 -14.741407 5.410605 40.615929 -0.769704 0.150191 -0.314337 0.814781 0.543442 0.772671 10.616905 8.038514 1.844983 4.421527 0.827156 44.246857 -0.514995 0.130340 -0.002675 0.324365 -0.238970 0.254222 -2.824683 5.566606 18.798265 0.901086 4.761019 12.483549 1.575875 5.467233 11.194688 0.661860 4.355558 15.046920 2.263628 6.139658 -22.975840 -16.242790 -10.588554 -11.123248 -24.970383 -19.963137 -3.880551 19.440142 -35.328617 -9.593328 0.199534 -0.289451 0.911532 -0.260070 0.455719 0.102632 17.808470 12.115895 -9.035743 26.005264 17.621380 -3.116271 2.568244 12.555613 -0.539392 -0.466386 0.218758 -0.094191 0.225199 -0.174701 -0.350544 +-0.882936 160.310898 -7.468408 -3.951068 -28.314140 -14.658726 14.656464 -1.484501 -28.988861 -16.692184 6.948024 46.013744 -0.781411 0.157537 -0.326287 0.834949 0.561806 0.796363 10.009518 8.156072 0.609379 2.790552 1.355837 44.942593 -0.529109 0.132999 -0.007122 0.334129 -0.246105 0.268468 -3.047845 5.335081 19.334686 0.839016 4.587658 12.353227 1.608082 5.275980 11.017730 0.437865 5.567584 16.024952 1.901066 7.147861 -23.041361 -16.170395 -13.187204 -11.091045 -25.422512 -21.855394 -3.810431 18.075987 -36.958931 -9.666641 0.192161 -0.295266 0.924107 -0.259308 0.472521 0.100895 19.069092 14.252347 -9.332437 27.213049 19.503361 -2.955547 3.485200 13.497530 -0.491509 -0.474513 0.224502 -0.088273 0.227158 -0.176478 -0.358150 +-0.385209 160.709290 -8.098943 -2.896662 -30.115959 -14.805517 15.251166 -2.069932 -29.847027 -18.544859 8.535769 50.239414 -0.805040 0.159552 -0.347084 0.865764 0.586449 0.845685 8.913358 8.079727 -0.280793 1.316384 1.804896 44.753677 -0.552468 0.146162 -0.028084 0.351881 -0.276800 0.277291 -3.832794 5.394170 19.295912 0.814932 4.357676 12.312677 1.997712 5.024978 11.154979 0.011191 6.492095 17.167461 1.177251 8.008206 -23.738403 -15.853295 -15.522545 -11.102896 -26.583313 -23.804476 -3.760355 17.679979 -38.716789 -10.173847 0.199799 -0.308034 0.952064 -0.276772 0.502234 0.088901 20.382586 16.483505 -9.621178 28.525106 21.361944 -2.873426 4.053050 14.467405 -0.493729 -0.474997 0.232469 -0.086949 0.228462 -0.185461 -0.376933 +0.109740 161.208115 -8.563685 -2.009492 -32.103107 -14.571639 15.690452 -2.468781 -30.211660 -20.086716 9.942435 53.228905 -0.824168 0.149686 -0.371978 0.900415 0.627798 0.870592 7.707985 7.885155 -1.140233 0.317813 2.014092 43.834743 -0.568441 0.149165 -0.037252 0.377586 -0.301117 0.284288 -4.087099 5.370061 18.836349 0.673531 4.316521 12.288920 2.009706 4.951563 11.451797 -0.449880 7.678872 17.719826 0.946899 8.769865 -24.558426 -15.501579 -17.728943 -11.281701 -27.603498 -26.205488 -3.452594 16.468843 -40.785332 -10.343193 0.208900 -0.300627 0.965986 -0.288729 0.521930 0.086196 22.039856 18.005072 -9.962749 29.935440 23.090492 -2.860291 4.654496 16.845171 -0.536531 -0.484247 0.229993 -0.077167 0.224943 -0.193187 -0.385325 +0.615264 161.803940 -8.906473 -1.159633 -34.417976 -14.113240 16.254591 -2.486581 -30.078491 -21.829233 11.530076 55.452095 -0.817439 0.111422 -0.398393 0.929744 0.686760 0.888795 6.591913 7.667726 -1.917775 -0.506562 2.177115 42.379234 -0.581796 0.150947 -0.049624 0.403784 -0.337581 0.287185 -4.317830 5.527941 17.547800 0.622589 4.396069 12.401053 2.226631 4.937293 12.249357 -0.603485 8.691172 18.291443 0.333090 9.715027 -25.155951 -14.696858 -19.727465 -11.243314 -29.037321 -28.495146 -3.001236 15.277623 -42.961945 -10.489894 0.218893 -0.277447 0.951106 -0.298480 0.544736 0.077655 23.210218 19.423939 -10.020134 31.335407 24.357399 -2.894075 5.340564 20.328924 -0.598119 -0.478576 0.217230 -0.047901 0.206710 -0.206626 -0.383251 +1.198880 162.473297 -9.250564 -0.508101 -36.275551 -13.372909 16.369020 -2.927111 -29.939592 -22.814600 12.535553 57.173092 -0.836719 0.107558 -0.423427 0.972779 0.732218 0.948996 5.427729 7.206614 -2.720895 -1.176937 2.110198 40.667812 -0.605508 0.140913 -0.063456 0.430563 -0.378063 0.311365 -4.656405 5.472090 15.542945 0.534732 4.162086 12.803163 2.584735 4.643502 13.712276 -0.035264 9.062766 18.888077 -1.375103 10.961511 -26.018171 -12.964817 -21.662720 -11.440739 -30.999987 -31.429777 -2.242731 14.988541 -45.140751 -11.083923 0.209694 -0.266970 0.957691 -0.295261 0.575338 0.067502 22.610880 21.099209 -10.295825 33.775581 26.205519 -2.374150 6.621922 22.771980 -0.497026 -0.492275 0.199208 -0.030320 0.185510 -0.226563 -0.406514 +1.895378 163.283859 -9.539839 -0.188872 -37.987804 -12.384252 16.186266 -3.313287 -29.581469 -23.117594 13.074473 58.509781 -0.859864 0.137657 -0.422318 1.000346 0.754921 0.980029 4.516550 6.785149 -3.590943 -1.777411 2.037611 38.593773 -0.622438 0.119869 -0.074240 0.456210 -0.368956 0.331829 -4.081478 5.046100 13.537821 0.307615 3.955226 13.266047 2.319573 4.426194 15.248762 0.099114 9.324507 18.971975 -2.113749 11.425934 -26.141409 -11.261165 -23.439707 -11.521269 -32.529953 -34.112473 -1.371864 15.120495 -48.673763 -12.116186 0.189029 -0.266114 0.959605 -0.278709 0.583505 0.077869 21.793381 22.915958 -10.753973 35.712666 28.473804 -1.489384 8.507584 24.322695 -0.140397 -0.511834 0.180841 -0.034278 0.195644 -0.235733 -0.412708 +2.530561 164.138290 -9.730065 -0.542251 -39.944088 -10.915195 16.314032 -3.403374 -28.652822 -22.771137 13.174883 59.425407 -0.911298 0.178894 -0.421773 1.002673 0.749986 0.990762 4.396669 6.370944 -4.169369 -2.806166 2.146480 35.777962 -0.615354 0.099170 -0.070744 0.482067 -0.346302 0.320824 -2.882785 4.556510 11.570958 0.197635 3.843090 13.670925 1.922955 4.362372 16.704454 -0.018685 10.005386 18.846231 -3.027206 11.904634 -26.099365 -9.734567 -25.398897 -11.464329 -34.038246 -36.989613 -0.178231 15.993881 -51.362659 -13.309598 0.160318 -0.297221 0.967722 -0.254360 0.563586 0.081063 21.165436 24.301682 -11.337437 37.767395 30.888477 -0.584838 9.875473 26.708069 0.148753 -0.547113 0.178486 -0.073544 0.229573 -0.227812 -0.432248 +3.130436 165.013077 -9.881728 -0.856332 -41.929783 -9.695102 15.919070 -3.492672 -27.085224 -21.717609 12.839348 60.061893 -0.937801 0.192432 -0.437172 1.015883 0.768596 1.021454 4.173833 5.876807 -4.288719 -3.558881 2.115716 32.378529 -0.618884 0.076039 -0.078767 0.503126 -0.359664 0.332117 -2.260154 4.276648 9.761883 0.186860 3.655869 14.210108 1.881805 4.161911 18.277431 0.333169 10.605669 18.321684 -4.968009 12.809434 -26.825466 -8.415435 -26.805695 -11.385502 -35.180901 -39.826572 1.051894 17.880074 -54.470871 -15.113780 0.132578 -0.296201 0.958876 -0.233944 0.566775 0.069467 19.697815 25.482771 -12.363465 39.688690 33.755463 0.871723 12.100214 28.769585 0.842052 -0.566970 0.162527 -0.074986 0.223590 -0.229272 -0.450840 +3.686080 165.810837 -10.013850 -0.708711 -43.809464 -8.467267 14.905660 -3.534812 -25.559381 -20.248421 12.217989 60.160931 -0.946055 0.210920 -0.418664 1.024623 0.787402 1.030497 3.471545 5.498128 -4.822309 -3.885707 1.971624 29.379862 -0.611777 0.046737 -0.062921 0.526348 -0.332026 0.331516 -1.974897 4.220587 7.711865 0.019630 3.570854 14.578968 1.722256 3.962033 19.697908 0.817285 11.011915 17.349674 -5.980451 13.452775 -26.642031 -6.325960 -27.790190 -11.353952 -36.349861 -42.721581 2.795760 19.648014 -57.580349 -16.854179 0.100534 -0.300538 0.929589 -0.195230 0.550063 0.087429 18.356791 26.276810 -13.279320 42.114651 36.407654 2.660153 14.139043 30.977058 1.550706 -0.589365 0.137617 -0.085893 0.241467 -0.243162 -0.449749 +4.259910 166.414413 -10.207077 -0.526642 -45.121262 -7.063622 13.826838 -3.506287 -24.599703 -19.174902 11.631252 59.457645 -0.946995 0.258391 -0.387693 0.999439 0.771575 1.008299 2.826969 5.272092 -5.705747 -3.972290 1.806051 27.176693 -0.582507 -0.008145 -0.044892 0.536935 -0.267804 0.336139 -2.219940 4.336460 5.366789 0.003672 3.388917 14.782374 2.017438 3.591717 21.089649 1.700519 10.786987 16.190712 -6.775830 13.974439 -25.134264 -3.153059 -28.147654 -11.463265 -38.719383 -46.343384 5.620354 23.407269 -59.769814 -19.725792 0.033027 -0.296529 0.870817 -0.124095 0.503584 0.103738 16.166775 26.730240 -14.252510 44.815201 38.909500 4.892429 15.825143 33.364933 2.250826 -0.615879 0.101931 -0.105385 0.256990 -0.237588 -0.440071 +4.808022 166.904221 -10.422624 -0.733068 -46.235039 -5.375851 12.913041 -3.198283 -23.421019 -17.914255 10.767119 57.741364 -0.954308 0.307424 -0.364783 0.986264 0.777217 0.987194 2.533220 5.195895 -6.705918 -4.037186 1.696595 25.221849 -0.553377 -0.077391 -0.025005 0.561223 -0.200391 0.349465 -2.017075 4.387517 3.086557 -0.028125 3.278562 14.960279 2.086468 3.206985 22.626192 2.779102 10.826136 14.578620 -7.635259 14.627603 -23.868572 0.433951 -27.764511 -11.965924 -40.785454 -49.879936 8.719790 27.362999 -60.750969 -22.435328 -0.046996 -0.280404 0.800177 -0.040896 0.455218 0.121873 13.817894 26.494278 -15.624992 48.139809 41.790955 7.802432 16.585855 35.660488 2.705543 -0.655214 0.055326 -0.116324 0.269366 -0.232309 -0.427753 +5.337681 167.258530 -10.614243 -0.671565 -46.814785 -3.893197 11.459826 -2.942939 -22.181154 -16.140398 9.583920 55.547531 -0.950636 0.365005 -0.340331 0.966309 0.764097 0.954548 1.957998 5.182302 -7.797228 -3.645499 1.523312 23.671066 -0.517947 -0.164296 -0.022018 0.578267 -0.131754 0.372793 -1.919564 4.425741 1.148464 -0.076473 3.175823 14.957006 2.065717 2.795013 23.794067 3.826082 10.731641 12.605187 -7.889929 15.008503 -21.867220 3.222129 -27.083439 -12.216269 -42.217484 -53.365868 12.120479 31.694693 -61.845379 -25.287073 -0.122936 -0.224026 0.718904 0.040902 0.393354 0.137271 12.114221 25.818710 -16.546345 51.171307 44.459446 10.872104 16.401535 38.809841 2.942775 -0.682854 -0.019257 -0.122532 0.252873 -0.223520 -0.411786 +5.970829 167.468262 -10.722678 -0.859234 -46.958382 -2.335909 9.919062 -2.736645 -20.640936 -14.101479 8.071872 52.302254 -0.958169 0.440343 -0.315949 0.939822 0.745111 0.919628 1.410876 5.200613 -8.952253 -2.924253 1.288273 22.457314 -0.481776 -0.251803 -0.021149 0.597846 -0.051501 0.399063 -1.350319 4.238487 -0.561026 -0.121929 2.950678 14.955166 1.860435 2.281338 24.973686 4.827607 10.758275 10.633663 -8.282496 15.194546 -20.152388 6.449837 -25.609381 -12.709257 -43.667767 -56.592579 15.710822 35.943020 -62.011654 -27.848598 -0.213995 -0.185012 0.638861 0.129724 0.330546 0.149686 9.052210 24.649481 -17.605297 55.137161 47.822521 15.320253 15.135632 43.891220 2.928677 -0.717636 -0.082079 -0.135897 0.252205 -0.204097 -0.395094 +6.541596 167.615463 -10.855451 -0.878984 -46.990540 -1.003827 8.527240 -2.343069 -18.514132 -12.292443 6.673387 47.958683 -0.971574 0.502153 -0.290632 0.947485 0.767150 0.897013 1.071578 5.108507 -9.644040 -2.864466 1.226002 20.680563 -0.453429 -0.340292 -0.010996 0.641907 0.025014 0.420717 -0.767321 4.114294 -2.158368 -0.179680 2.845925 15.011827 1.526419 1.896911 26.267313 5.323076 10.922235 8.268052 -8.490258 14.956399 -18.852190 9.191633 -24.203531 -13.362367 -45.204578 -60.212364 19.946867 39.044483 -61.700741 -29.297483 -0.289116 -0.141418 0.558560 0.213191 0.272033 0.179572 7.379398 23.140976 -18.209124 58.328152 51.342308 20.247238 12.153774 49.311752 2.164521 -0.762205 -0.156868 -0.142680 0.261443 -0.205165 -0.372922 +7.057555 167.557571 -10.920549 -1.230472 -46.656609 0.442605 7.331985 -1.740466 -16.060001 -10.061866 5.214743 42.836052 -0.997944 0.571828 -0.276640 0.947832 0.780475 0.880163 1.053766 5.037213 -10.068597 -2.993827 1.212883 18.801537 -0.425038 -0.432788 -0.008094 0.684772 0.094772 0.446590 -0.284973 3.882831 -3.749554 -0.072697 2.528199 14.991328 1.398276 1.312439 27.576986 6.027594 11.206347 5.910971 -9.104285 15.137292 -17.829308 11.725971 -22.904642 -13.194918 -47.234917 -64.533775 25.224836 48.677532 -60.326427 -34.716457 -0.376537 -0.100843 0.483832 0.301007 0.215342 0.196626 4.899434 21.511467 -18.576088 61.936188 55.069584 26.199390 4.828767 54.079399 -1.240528 -0.812577 -0.227911 -0.154991 0.264950 -0.197050 -0.362811 +7.587570 167.365753 -10.901763 -2.077862 -46.110245 2.012757 6.535984 -1.331937 -13.081786 -8.285513 3.906640 36.841415 -1.018823 0.641023 -0.253573 0.927581 0.766131 0.849975 1.363298 4.890635 -10.263627 -2.874372 1.114060 16.737457 -0.388357 -0.516681 -0.005158 0.712771 0.169920 0.458273 0.481760 3.436158 -5.048006 0.158610 2.045128 14.902683 1.410088 0.645872 28.431152 6.507666 11.548370 4.081892 -9.396035 15.291439 -16.265709 13.629256 -22.269430 -12.785307 -47.420818 -67.600021 28.423721 55.280792 -57.893425 -37.501396 -0.455382 -0.070563 0.415153 0.382152 0.149462 0.210388 2.309518 20.545267 -18.556328 63.445854 58.406113 31.174095 -3.587263 57.647339 -5.777683 -0.851452 -0.290484 -0.180625 0.271849 -0.183372 -0.353475 +8.139922 167.086945 -10.794964 -3.024992 -45.163448 3.657308 5.893311 -1.174371 -10.053085 -6.714139 2.707225 30.537392 -1.019406 0.691615 -0.225973 0.901554 0.746145 0.812211 1.922684 4.651367 -10.529010 -3.311572 1.057028 14.482162 -0.352628 -0.579892 0.002972 0.725711 0.238784 0.462736 1.321715 2.750009 -6.127728 0.409789 1.401359 14.669721 1.591582 -0.009055 28.826303 6.777174 12.019965 2.717205 -9.378774 15.401419 -14.719897 14.439263 -21.786655 -12.179305 -48.106052 -69.398895 30.808195 59.139744 -55.577740 -38.558247 -0.514520 -0.042489 0.351448 0.446580 0.090689 0.226204 -0.302565 19.854856 -17.972563 63.413548 61.707382 35.246841 -15.484043 60.341480 -12.905975 -0.872714 -0.338976 -0.199186 0.278354 -0.171877 -0.336583 +8.799688 166.731125 -10.707587 -4.209492 -43.682922 5.327074 5.640352 -1.121407 -7.192679 -4.969370 1.564939 24.122175 -1.042845 0.742357 -0.223079 0.920845 0.791623 0.796968 2.511583 4.493289 -10.739907 -3.291160 0.951021 12.801895 -0.332223 -0.665120 0.001257 0.783237 0.295874 0.487380 2.675274 1.955778 -7.170510 0.667585 0.729253 14.539393 1.773978 -0.718704 29.603876 6.918083 12.356170 0.999013 -9.626181 15.236059 -13.834995 15.685409 -19.757973 -12.304187 -52.083424 -71.228249 35.669212 61.458885 -53.491234 -38.906113 -0.587467 0.003552 0.274759 0.521872 0.045669 0.245024 -2.650172 18.035553 -18.101049 64.836891 65.297920 40.881710 -27.158100 60.834400 -19.952339 -0.919769 -0.409900 -0.196231 0.282147 -0.170038 -0.317770 +9.478745 166.407898 -10.659604 -4.985158 -41.739777 6.478364 5.355981 -1.161506 -4.619622 -3.154108 0.644335 18.145716 -1.090246 0.817315 -0.219817 0.915304 0.789075 0.788350 2.564704 4.277537 -10.861807 -2.881729 0.762308 11.261994 -0.306446 -0.734677 -0.003111 0.822015 0.355988 0.500772 3.502032 1.115947 -7.960092 0.944044 -0.097512 14.434904 2.296673 -1.536874 30.153122 7.272769 12.537025 -0.196136 -10.017186 15.306556 -13.035751 15.669153 -17.467937 -12.309466 -56.735508 -72.494247 40.849648 63.261333 -51.987835 -39.211372 -0.667121 0.012065 0.229978 0.592134 -0.004957 0.247079 -4.700796 16.199377 -18.488214 66.628220 68.156883 46.066250 -34.702087 59.956367 -24.123089 -0.970360 -0.451779 -0.225195 0.301113 -0.150006 -0.322229 +10.139124 166.208511 -10.655588 -5.300417 -40.164059 6.764904 4.916523 -1.123915 -2.158214 -1.728130 0.088607 13.530686 -1.099236 0.839905 -0.209688 0.915599 0.801475 0.780011 2.097042 4.026699 -10.743176 -2.141443 0.577856 10.268116 -0.295503 -0.763969 0.000655 0.844227 0.386985 0.501329 3.746252 0.343584 -8.364570 1.232044 -0.869282 14.649433 2.940700 -2.295182 30.753368 7.235092 12.683440 -0.707292 -10.284906 15.279030 -12.616693 15.196456 -16.014782 -11.866718 -56.073547 -72.118721 40.071522 67.018219 -51.379295 -41.398281 -0.697536 0.014138 0.198975 0.624464 -0.025672 0.257716 -6.720199 15.631665 -18.756304 65.503212 70.584396 47.880749 -40.419041 58.486000 -26.962854 -0.987462 -0.472984 -0.233663 0.316679 -0.150354 -0.313422 +10.654404 166.179779 -10.645554 -4.944256 -39.087788 6.348263 4.325727 -0.970683 0.016181 -1.205743 -0.157807 9.864465 -1.096951 0.822241 -0.219537 0.954418 0.851100 0.799497 1.295098 3.731236 -10.465878 -1.462644 0.427104 9.707247 -0.313712 -0.764381 -0.004805 0.867795 0.368795 0.511673 3.171412 -0.430666 -8.544799 1.389963 -1.645985 15.086342 3.622384 -2.982769 31.504795 6.846983 12.960088 -0.861428 -10.437006 15.113918 -13.143548 13.846340 -14.872466 -11.076325 -54.482483 -70.344421 37.039261 72.295982 -51.172344 -45.048656 -0.682150 0.032925 0.196125 0.613875 -0.006114 0.268225 -8.196864 15.559580 -19.170992 64.083588 72.440781 48.616299 -43.497639 57.674503 -28.336992 -0.988700 -0.487447 -0.210443 0.311457 -0.168925 -0.305869 +11.125395 166.299744 -10.601816 -4.740160 -38.537167 6.115050 4.048481 -0.737400 1.379201 -1.179225 -0.227580 7.158032 -1.084738 0.788376 -0.228655 1.000917 0.920972 0.829529 0.713187 3.411147 -10.135060 -0.925823 0.299939 8.839221 -0.336795 -0.755659 -0.007592 0.898849 0.341237 0.516950 2.366146 -0.958242 -8.728352 1.630340 -2.214990 15.438787 4.476635 -3.578359 32.226089 6.641571 12.948731 -0.745057 -10.782589 14.985612 -13.848970 13.948818 -13.862144 -10.626502 -56.628014 -69.249527 36.820278 75.675552 -49.002544 -46.430412 -0.661248 0.045069 0.186051 0.600412 0.025978 0.282437 -9.989197 15.184614 -19.792603 63.833912 73.167816 49.030106 -44.953426 57.150688 -29.091829 -0.983364 -0.499070 -0.180107 0.311097 -0.200623 -0.294014 +11.704982 166.443573 -10.500327 -4.902152 -38.577633 6.606191 3.967666 -0.571117 1.688066 -1.402363 -0.226259 5.278137 -1.077761 0.775152 -0.227254 1.014740 0.938797 0.830495 0.492277 3.368220 -10.587141 -0.772997 0.246548 8.689735 -0.344673 -0.747596 -0.001659 0.902613 0.336509 0.516506 2.692729 -1.349458 -8.828351 1.617638 -2.523815 15.354789 4.594627 -3.812340 32.288555 6.288514 13.026314 -0.367314 -10.775361 14.813252 -14.011901 13.776206 -13.612578 -9.788488 -60.582260 -68.036064 37.971722 78.955338 -46.889603 -47.705170 -0.646007 0.045985 0.189765 0.590842 0.035649 0.293364 -11.118945 14.942119 -19.831707 66.460342 73.011261 51.017929 -46.437981 57.026867 -30.156076 -0.980619 -0.496784 -0.170941 0.315331 -0.209686 -0.286371 +12.290704 166.611801 -10.457254 -4.451474 -38.422558 6.790403 3.186703 -0.593420 1.158560 -1.276390 -0.268725 4.707998 -1.069638 0.768653 -0.232556 1.016225 0.945699 0.824963 0.018032 3.191138 -10.856431 -1.310403 0.235380 8.007919 -0.350006 -0.756330 -0.000957 0.898630 0.330614 0.531174 2.337476 -1.658933 -8.863449 1.543133 -2.792575 15.227049 4.852370 -4.019577 32.291412 6.229304 13.150345 -0.183849 -11.170837 15.021295 -14.089559 13.014682 -13.408588 -8.975149 -65.255104 -67.021538 40.152306 82.305130 -45.638062 -49.411636 -0.647906 0.061677 0.185085 0.594335 0.043850 0.295907 -11.717545 14.692482 -19.848322 69.128975 72.343956 52.539219 -47.315952 57.403542 -31.085566 -0.980848 -0.502920 -0.156300 0.300064 -0.209540 -0.281604 +12.875531 166.796127 -10.318791 -4.070812 -38.260422 7.089659 2.559883 -0.654498 0.366627 -1.238704 -0.282167 4.543143 -1.077106 0.788649 -0.222730 0.994107 0.917558 0.828116 -0.513203 2.922876 -10.851745 -1.647080 0.162917 6.766772 -0.346808 -0.757777 0.008350 0.884187 0.340838 0.534871 2.385808 -1.728528 -8.986812 1.525151 -2.863063 14.998963 5.042413 -4.071307 32.190971 6.303298 12.619086 0.119050 -12.283116 15.076365 -14.216791 12.455155 -13.078830 -8.884089 -72.097710 -67.240944 45.277969 81.637329 -44.454758 -48.337662 -0.669855 0.028617 0.190516 0.610847 0.044922 0.292762 -11.799401 14.050757 -19.717897 72.974464 71.297256 54.834290 -47.838268 58.205597 -31.992229 -0.988223 -0.485575 -0.170921 0.313014 -0.202340 -0.289735 +13.395077 166.737762 -10.082503 -4.089847 -38.572506 7.906460 2.023226 -0.771835 -0.614322 -0.956871 -0.310606 4.438101 -1.090999 0.837962 -0.221204 0.939800 0.833757 0.820332 -0.772714 2.743091 -11.101755 -2.010183 0.080789 5.364624 -0.320281 -0.772708 -0.000133 0.844304 0.358260 0.544182 3.062252 -1.634425 -9.226872 1.376643 -2.750168 14.442250 4.875720 -3.944598 31.619038 6.492706 12.150744 0.513427 -13.014243 15.226171 -13.560247 12.360047 -12.960727 -9.066564 -79.192009 -67.515518 50.885387 78.395531 -42.794807 -45.265221 -0.717387 0.013727 0.188676 0.637388 0.013729 0.254864 -11.302478 13.244636 -19.318937 77.865608 69.759842 57.727581 -47.193928 59.089581 -32.161739 -0.993525 -0.474057 -0.192754 0.299459 -0.161056 -0.313150 +13.828653 166.652512 -9.840980 -4.151379 -39.715862 8.555477 1.746907 -0.754878 -1.088156 -1.389479 -0.252810 4.218377 -1.094460 0.847454 -0.218103 0.918178 0.790864 0.826976 -1.008653 2.547835 -11.201224 -2.324178 0.017737 3.860257 -0.313390 -0.762404 -0.003633 0.820353 0.350867 0.538424 3.126805 -1.284690 -9.438453 1.382890 -2.418868 14.068754 5.008206 -3.604424 31.115501 6.412742 11.882789 1.204330 -13.347988 15.287351 -13.348889 12.705297 -13.583503 -9.407660 -85.446564 -67.152603 54.847454 74.411972 -41.302387 -42.276527 -0.715568 -0.002619 0.206030 0.630796 0.009265 0.238870 -10.225543 13.082952 -19.100153 79.090797 68.281090 57.511650 -43.573631 60.552917 -30.385550 -0.984893 -0.460988 -0.207544 0.293337 -0.152303 -0.329515 +14.215366 166.400497 -9.639891 -4.677720 -41.686428 9.656706 1.885013 -0.656468 -1.603452 -2.277337 -0.131871 4.024805 -1.096539 0.847049 -0.216312 0.899181 0.765406 0.823466 -0.900262 2.684221 -12.250626 -2.741712 0.018088 3.545446 -0.316231 -0.743360 -0.003258 0.803856 0.347300 0.530707 3.160746 -0.712731 -9.501808 1.436634 -1.890032 13.627561 5.169096 -3.120769 30.388159 6.273380 12.225251 1.860964 -13.435210 15.693666 -13.532401 13.751966 -14.217770 -9.579228 -91.074524 -66.179016 58.107872 71.605705 -41.023403 -41.015305 -0.707246 -0.029610 0.230715 0.619336 0.019214 0.234175 -8.760969 13.039057 -19.083811 80.860359 66.582199 57.432156 -37.243942 61.676510 -26.572687 -0.976292 -0.434797 -0.222670 0.302144 -0.146139 -0.336545 +14.641613 166.171127 -9.462562 -4.921983 -42.801075 10.401458 1.961649 -0.653288 -2.308728 -2.962060 -0.032566 4.267697 -1.101563 0.853457 -0.224961 0.870326 0.719591 0.826937 -0.979882 2.826349 -13.204652 -3.001142 0.008811 3.600504 -0.311085 -0.731952 -0.012616 0.774296 0.332458 0.530921 3.247879 -0.434707 -9.442404 1.396472 -1.644224 13.281281 5.101701 -2.848711 29.631275 6.132382 12.535857 2.332519 -13.839775 16.173334 -13.591652 14.036519 -14.964469 -10.235558 -94.001587 -65.193275 59.397999 65.991959 -42.356003 -38.854191 -0.711980 -0.044189 0.250843 0.612267 0.019960 0.205883 -6.929202 13.165133 -19.168177 81.738197 65.022469 56.448383 -29.359505 61.857716 -21.390314 -0.967768 -0.414291 -0.232128 0.287072 -0.126680 -0.356596 +14.929004 165.985611 -9.151836 -5.146772 -44.025570 10.659870 1.861766 -0.618712 -2.457432 -3.627368 0.076044 4.691832 -1.113603 0.862037 -0.234416 0.836180 0.655577 0.837443 -1.104248 2.909253 -13.575015 -3.150526 -0.015004 3.813988 -0.314156 -0.699742 -0.017814 0.729508 0.310522 0.530876 3.055251 -0.057957 -9.364016 1.450817 -1.412310 13.194138 5.110569 -2.577329 29.038452 6.297140 12.702289 3.478209 -14.333034 16.750994 -14.108746 14.413742 -15.568020 -11.278418 -95.429695 -63.821934 59.185909 57.418194 -45.314835 -35.808811 -0.706590 -0.085103 0.302984 0.591128 0.034978 0.175094 -5.280315 13.301097 -19.151182 81.850861 62.609364 53.425987 -20.594717 61.990658 -15.891312 -0.957578 -0.366274 -0.250480 0.280691 -0.103298 -0.386017 +15.239906 165.860687 -8.873873 -5.101358 -44.078457 10.554264 1.762973 -0.619790 -2.705960 -4.132512 0.163494 5.248610 -1.065822 0.808932 -0.239849 0.811836 0.623993 0.841892 -1.365934 2.949719 -13.787544 -3.244636 -0.017868 4.303505 -0.331706 -0.644221 -0.022773 0.671724 0.259055 0.532400 2.976861 -0.084707 -9.119883 1.366517 -1.515588 13.196385 4.765889 -2.713930 28.262587 6.814708 12.806744 5.025874 -14.482751 17.505720 -14.744325 14.495887 -16.764977 -12.363049 -92.717079 -62.055065 55.235191 46.282558 -50.457123 -31.692688 -0.660865 -0.094262 0.338789 0.541981 0.078395 0.152664 -3.421954 14.127910 -18.576777 82.206139 59.136444 48.684807 -12.521753 61.617619 -11.249223 -0.906939 -0.322045 -0.224770 0.247289 -0.103141 -0.389675 +15.554181 165.727951 -8.521416 -4.992289 -43.029907 10.302081 1.799044 -0.734454 -3.166370 -4.538305 0.242601 6.367111 -1.036913 0.752425 -0.246099 0.799819 0.595353 0.851504 -1.727636 3.030383 -13.933911 -3.180070 0.005409 5.350820 -0.342926 -0.582150 -0.018190 0.625031 0.202747 0.512445 3.246763 -0.343732 -8.779749 1.318521 -1.792602 13.138346 4.421697 -2.928024 27.262768 7.133666 12.467698 6.503696 -14.343180 17.727160 -15.214037 13.763721 -18.234430 -13.430535 -90.439125 -59.598083 50.590897 32.098812 -54.040592 -24.599171 -0.596401 -0.113991 0.388799 0.482040 0.111295 0.135804 -1.226582 14.862134 -17.865034 81.529343 55.168659 42.481625 -3.667370 60.634468 -6.241711 -0.865408 -0.278168 -0.215349 0.225861 -0.110626 -0.402989 +15.849076 165.574310 -8.131860 -5.068333 -41.067970 10.106946 2.219613 -0.983507 -3.892625 -4.928264 0.300052 8.002980 -0.974695 0.673846 -0.249245 0.785369 0.561364 0.864256 -1.804403 3.097839 -13.968277 -3.114265 0.019697 6.572827 -0.362699 -0.512554 -0.022638 0.559440 0.124588 0.503094 3.246873 -0.894110 -8.172311 1.569622 -2.382916 12.990288 4.773133 -3.400424 25.807117 7.534362 11.780448 8.253345 -14.297837 18.063457 -15.435966 12.291859 -20.430418 -13.915789 -87.921021 -56.758984 44.783585 17.719345 -55.451141 -16.588863 -0.510555 -0.109447 0.436906 0.405972 0.161027 0.118351 0.317219 15.617240 -17.052387 78.412018 50.447380 34.290943 8.714778 60.411060 0.767698 -0.795650 -0.242457 -0.184958 0.174225 -0.129363 -0.409777 +16.292578 165.454025 -7.821098 -4.871679 -38.688713 9.761529 2.260157 -1.424712 -5.083307 -4.831028 0.272306 10.155741 -0.929159 0.591818 -0.264899 0.778132 0.545931 0.891141 -2.257285 3.204778 -14.475119 -2.807207 0.011261 8.639344 -0.386443 -0.438901 -0.028916 0.507698 0.036384 0.489523 3.615349 -1.483473 -7.302910 1.715158 -2.932990 12.817417 4.830313 -3.806264 24.267712 7.908114 10.728236 9.849509 -14.754625 18.273989 -16.239548 10.317590 -21.980553 -14.548903 -85.792686 -53.839848 39.431683 2.632618 -54.322548 -7.791092 -0.432590 -0.123592 0.486953 0.331576 0.219326 0.092193 1.359591 15.725340 -16.802837 77.041733 45.500538 26.988073 19.085180 56.334438 5.642725 -0.736002 -0.196466 -0.155901 0.134010 -0.147351 -0.423532 +16.767014 165.220108 -7.596445 -4.816630 -36.790577 9.367983 2.466438 -1.855611 -6.022723 -5.049363 0.254085 12.265924 -0.890086 0.510714 -0.288790 0.798678 0.555843 0.921003 -2.412832 3.453909 -15.473419 -2.841933 0.052842 11.852003 -0.429361 -0.365020 -0.042164 0.468560 -0.055111 0.493362 4.239603 -1.800911 -6.213076 1.862685 -3.158482 12.595392 4.732828 -3.848646 22.623755 8.044323 9.594744 11.559546 -14.349407 17.979103 -17.310083 8.532695 -23.883814 -15.057103 -83.152710 -51.063713 33.961685 -8.430391 -50.342369 -1.799217 -0.341301 -0.123655 0.553789 0.244320 0.293513 0.077877 2.455341 15.799919 -16.267269 75.115257 40.511330 19.463898 24.019423 50.752930 6.489604 -0.683317 -0.154140 -0.114255 0.092475 -0.169525 -0.430516 +17.290911 164.959213 -7.414825 -4.478417 -35.145138 8.876101 2.365196 -2.374192 -7.190221 -5.518082 0.285005 14.595009 -0.847710 0.429252 -0.295581 0.817548 0.578810 0.953382 -2.935126 3.624351 -16.941275 -2.514184 0.023516 15.458811 -0.462106 -0.291627 -0.037040 0.440824 -0.127184 0.480081 4.448170 -2.098420 -4.941921 2.011973 -3.327550 12.311473 4.844123 -3.878735 21.023130 7.943216 8.780449 12.722813 -14.475996 17.711874 -18.331877 5.413836 -24.815405 -15.323556 -80.279602 -48.015671 28.767843 -16.461260 -44.307777 1.851089 -0.264389 -0.148040 0.597518 0.176007 0.357297 0.073871 3.838594 15.699075 -15.997826 72.945160 36.886215 14.157047 24.673544 44.276363 5.275273 -0.636407 -0.109438 -0.081147 0.079550 -0.201851 -0.430333 +17.785343 164.539001 -7.141523 -3.791245 -33.846031 8.387157 1.852908 -2.899937 -8.296381 -6.096842 0.341151 16.631353 -0.808238 0.355307 -0.302025 0.831616 0.598727 0.951845 -3.781037 3.740919 -19.018318 -2.164133 -0.041196 19.654463 -0.487705 -0.232848 -0.030307 0.416189 -0.179527 0.467214 4.306993 -2.352704 -3.638881 2.095264 -3.466448 11.781212 5.023437 -3.875977 19.177557 7.386358 8.591800 13.662288 -13.834954 17.137136 -18.778818 1.960691 -25.163218 -14.632752 -78.016800 -44.202263 23.552284 -19.917215 -38.329239 2.590349 -0.187717 -0.154263 0.635079 0.111997 0.403640 0.079281 5.163298 15.574767 -15.607550 70.591850 33.865841 10.379823 24.017225 37.946579 3.954708 -0.597360 -0.074694 -0.049744 0.067209 -0.221737 -0.418418 +18.330759 164.179581 -6.870327 -3.681135 -33.151340 8.070025 1.865900 -3.263278 -9.093833 -7.076929 0.525211 18.374027 -0.798733 0.300127 -0.318664 0.838479 0.605428 0.959621 -4.173430 4.119389 -21.660055 -1.905512 -0.082959 24.898504 -0.506839 -0.166358 -0.028408 0.397086 -0.230968 0.442493 4.744067 -2.604010 -2.125001 2.256796 -3.581299 11.288576 5.008955 -3.833755 17.503284 6.419683 8.837600 14.846249 -13.476909 16.512730 -19.515322 -1.287033 -25.412186 -13.747530 -75.364235 -40.273064 18.525545 -19.840181 -32.175537 1.762491 -0.122956 -0.192694 0.686309 0.048361 0.443977 0.068460 6.177608 15.792447 -15.426707 68.357788 31.555937 7.664391 21.241856 31.155571 2.268438 -0.569114 -0.019661 -0.039187 0.075034 -0.226762 -0.421802 +18.939306 163.776047 -6.580958 -3.720657 -32.206123 7.651282 2.004519 -3.678839 -9.836908 -7.989707 0.724398 20.425817 -0.760992 0.249768 -0.309020 0.846747 0.610231 0.966991 -4.569657 4.494790 -24.502705 -1.122313 -0.321967 30.765654 -0.523824 -0.115091 -0.017938 0.373039 -0.266962 0.427568 5.576309 -2.850151 -0.464693 2.555452 -3.584078 10.752144 4.959300 -3.723801 15.846239 5.325629 8.634088 15.645189 -13.433267 15.707110 -19.426193 -5.470442 -25.574333 -12.463014 -71.813065 -36.774284 14.242193 -18.183001 -26.963381 0.834180 -0.061498 -0.211856 0.711779 -0.000145 0.478787 0.079219 7.203215 16.091066 -14.941464 65.143066 29.111261 5.211731 18.671806 25.223808 1.173900 -0.532027 0.009685 -0.019613 0.075905 -0.250108 -0.410450 +19.439470 163.280258 -6.358846 -3.231553 -30.929041 6.858565 1.773720 -4.101543 -10.373734 -8.927192 0.938995 22.065350 -0.725303 0.186942 -0.318703 0.872240 0.637902 0.986968 -5.462763 4.586460 -27.163103 0.127730 -0.821714 36.262287 -0.552885 -0.064471 -0.024821 0.358027 -0.325464 0.425053 5.291738 -2.864788 1.258097 2.988086 -3.640156 10.240232 5.567379 -3.770025 14.406233 4.510455 8.365150 16.270124 -13.276519 15.029097 -20.173136 -7.593249 -24.577877 -11.412386 -69.818794 -33.859203 11.203640 -15.123612 -23.856007 -0.217358 0.006055 -0.206937 0.740991 -0.060412 0.527148 0.078416 7.802942 15.485609 -14.418867 62.464172 26.800749 3.287712 15.403626 20.315866 0.300987 -0.492762 0.030450 0.016900 0.056504 -0.274000 -0.402824 +19.946774 162.931671 -6.141751 -2.898714 -29.681501 5.870984 1.895730 -4.475026 -10.590205 -10.181825 1.255313 23.522692 -0.724974 0.146599 -0.336209 0.882914 0.638385 1.002475 -6.115812 4.700952 -29.537872 1.648692 -1.540842 41.458977 -0.568589 -0.009576 -0.027956 0.343671 -0.376250 0.405295 4.895731 -2.932024 3.379297 3.563492 -3.887345 9.761519 6.236234 -3.949844 12.988148 3.558750 8.314308 17.141518 -13.135340 14.367659 -21.049139 -9.910426 -23.669518 -10.299650 -66.558167 -30.758142 8.031378 -11.624775 -21.327078 -1.136563 0.063747 -0.232437 0.790183 -0.118794 0.558664 0.065577 9.075508 14.934098 -13.808750 59.144989 24.671946 1.479747 11.770635 15.992798 -0.301133 -0.470865 0.071178 0.022373 0.057114 -0.278523 -0.414184 +20.385530 162.420090 -5.809050 -2.629579 -28.410467 5.047889 1.947702 -4.909387 -10.967044 -11.035223 1.555276 25.477037 -0.688370 0.129967 -0.322121 0.851673 0.598775 0.973703 -6.486128 4.818720 -32.389385 2.907674 -2.365039 47.160591 -0.562033 0.015903 -0.023939 0.302312 -0.378122 0.398145 4.998044 -3.110595 5.404242 4.020192 -4.073726 9.107855 6.576442 -4.041526 11.299379 2.619753 8.141638 17.236959 -12.970862 13.684276 -20.442793 -12.173937 -22.142656 -9.391544 -63.350090 -27.746367 5.657024 -9.421108 -18.544302 -1.481310 0.088213 -0.236741 0.793615 -0.140827 0.558756 0.062063 10.041064 13.447751 -13.078409 56.055981 22.263443 0.006051 9.110870 12.424438 -0.542901 -0.438307 0.093594 0.031726 0.050469 -0.267912 -0.399299 +20.655802 162.026123 -5.410189 -2.579285 -27.030783 3.905214 2.193041 -5.118251 -10.440008 -11.731739 1.839855 26.942944 -0.670667 0.106306 -0.319521 0.839352 0.575707 0.980028 -5.922709 5.223995 -34.627769 3.335677 -2.860260 52.538612 -0.569161 0.054167 -0.021103 0.271084 -0.405383 0.389587 5.081206 -3.273753 7.688556 4.604631 -4.311306 8.630200 6.929250 -4.148957 9.902285 2.230366 7.774840 17.572731 -13.491461 13.308335 -20.964165 -13.982994 -20.404556 -8.745137 -59.872799 -24.946609 3.649870 -7.365471 -16.181147 -1.686979 0.119134 -0.259946 0.819565 -0.173347 0.578928 0.052047 9.670031 11.711251 -12.443888 53.719810 20.020018 -1.216445 6.452978 9.831444 -0.684007 -0.413292 0.126729 0.037462 0.048415 -0.268086 -0.403226 +20.923830 161.772049 -4.961757 -2.448963 -26.234571 2.501436 2.375989 -5.115589 -9.258163 -12.836029 2.252694 27.794682 -0.665110 0.086009 -0.329235 0.833262 0.564884 0.964623 -5.266737 5.865745 -36.718525 4.138410 -3.463048 57.418667 -0.572619 0.075839 -0.026541 0.255885 -0.426751 0.383084 5.098778 -3.299753 10.047618 5.168306 -4.453836 8.310069 7.203218 -4.160669 8.788762 1.265124 7.959083 17.824543 -13.343112 12.685974 -21.318361 -15.072963 -18.624985 -8.199430 -56.492081 -22.251076 1.979178 -5.183663 -14.359780 -1.866831 0.152452 -0.261217 0.841903 -0.205720 0.588665 0.044471 9.763039 9.814312 -12.009745 50.379032 18.102114 -2.084780 4.678450 7.296798 -0.614830 -0.396773 0.144943 0.043737 0.040403 -0.259832 -0.400414 +21.304970 161.639526 -4.406205 -2.477626 -25.583950 1.134860 2.446629 -5.093029 -7.781987 -13.718141 2.549747 28.231613 -0.650031 0.086525 -0.313719 0.812903 0.526092 0.965160 -4.345796 6.413343 -37.727325 5.292819 -4.207455 59.874550 -0.569063 0.094820 -0.020372 0.225577 -0.431553 0.377287 5.368691 -3.518675 12.142909 5.688255 -4.636598 8.160872 7.295374 -4.185848 7.942498 0.932564 7.465970 17.837507 -14.010962 12.280703 -21.185457 -16.195415 -16.694933 -7.628699 -52.625534 -19.637558 0.561332 -3.642333 -13.151987 -1.899352 0.165656 -0.279686 0.853868 -0.218140 0.590423 0.042038 8.520665 8.301280 -11.396812 47.538345 16.361395 -2.569279 3.455353 4.880548 -0.454788 -0.378742 0.162765 0.038497 0.041495 -0.258521 -0.403009 +21.733635 161.645325 -3.841963 -2.286617 -25.117910 -0.636689 1.986293 -5.084488 -5.939081 -14.112706 2.645925 28.494408 -0.632304 0.063293 -0.300490 0.807424 0.519311 0.950874 -3.194491 6.859639 -37.570408 6.066957 -4.599330 60.515621 -0.570016 0.119315 -0.009515 0.213131 -0.435593 0.357969 5.798743 -3.771970 14.191962 6.053557 -4.701538 8.294361 7.031574 -4.094211 7.448591 0.239990 7.740993 17.806854 -13.703785 11.927844 -21.271889 -16.054817 -15.618456 -6.624852 -48.945755 -16.865530 -0.683796 -2.067552 -12.982361 -1.973437 0.199944 -0.290488 0.866414 -0.241907 0.594869 0.054184 6.860387 7.078993 -10.348022 44.608337 14.283694 -3.020995 2.963342 3.447149 -0.298268 -0.360637 0.177405 0.035423 0.051756 -0.266719 -0.393854 +22.125004 161.531906 -3.083708 -2.166203 -24.630690 -1.663722 1.515905 -5.174159 -4.827649 -14.471898 2.769121 29.009676 -0.600593 0.070499 -0.270768 0.743624 0.453749 0.892089 -1.901205 7.162938 -37.692253 6.769125 -4.928093 60.020603 -0.535954 0.111024 0.003509 0.173496 -0.396985 0.339500 6.378611 -4.183243 15.112103 6.172395 -4.737058 8.396427 6.765175 -3.990396 7.125211 0.108338 7.708813 16.786697 -13.546597 11.916632 -19.829775 -15.221964 -13.651916 -5.751749 -46.389057 -14.438077 -1.558282 -0.554936 -13.152649 -2.043138 0.188790 -0.289363 0.838840 -0.224319 0.555854 0.054913 4.676977 4.906705 -9.400670 42.898899 12.146390 -3.640697 1.656223 3.159911 -0.287754 -0.340275 0.179447 0.018132 0.051056 -0.245426 -0.377672 +22.466068 161.500366 -2.304932 -2.055101 -23.829338 -2.975442 1.081498 -5.366776 -3.480710 -14.614173 2.810500 29.752996 -0.580074 0.087083 -0.245907 0.686938 0.390968 0.825781 -0.878860 7.192424 -37.356110 8.201337 -5.672806 58.829304 -0.500118 0.103878 0.024154 0.136142 -0.348393 0.324482 7.110904 -4.645409 16.056213 6.283606 -4.748927 8.607339 6.359359 -3.813424 6.912333 -0.444602 7.587723 15.901487 -12.809057 11.334287 -18.524189 -14.213674 -11.942996 -5.137749 -43.866344 -12.573420 -2.079563 0.714412 -13.109380 -2.073658 0.173702 -0.291662 0.817658 -0.206092 0.511064 0.057749 3.064054 2.571803 -8.369623 40.710045 9.655045 -4.404863 0.360695 3.894627 -0.319801 -0.334030 0.190125 0.002431 0.059564 -0.214290 -0.359476 +22.872311 161.422791 -1.313470 -2.041801 -22.954294 -4.169893 0.394290 -5.555633 -1.919752 -14.591467 2.741154 30.261702 -0.562184 0.104488 -0.218997 0.637668 0.336687 0.781187 0.177427 7.040009 -36.515480 9.750964 -6.347628 56.410931 -0.475205 0.096511 0.041173 0.103359 -0.310694 0.316994 8.046453 -5.338715 16.680611 6.365494 -4.895295 8.906464 5.858542 -3.778972 6.917534 -0.668868 7.227249 14.600461 -13.153727 11.007820 -18.080950 -13.998933 -9.715944 -4.894775 -40.921242 -10.897231 -2.568496 1.856445 -13.603149 -2.119638 0.155882 -0.300594 0.800210 -0.187286 0.481149 0.060986 1.558456 0.042937 -7.874634 38.117565 7.941613 -4.851634 -0.943324 4.074091 -0.304717 -0.327695 0.199637 -0.012387 0.069006 -0.193076 -0.347032 +23.301834 161.322922 -0.261919 -2.056665 -22.119368 -5.023495 -0.362816 -5.720055 -0.578047 -14.546800 2.626470 30.498734 -0.509479 0.104380 -0.184608 0.601993 0.300938 0.747661 1.292220 6.826552 -35.948139 11.114471 -6.784885 53.397564 -0.454093 0.078111 0.056263 0.068971 -0.284203 0.324373 9.215619 -6.142268 16.680567 6.343857 -4.990275 9.155828 5.281582 -3.772311 7.048426 -0.810808 6.742489 13.154643 -13.888503 10.898558 -17.038511 -13.540312 -7.637950 -4.623315 -38.357166 -9.490891 -2.898944 3.393082 -13.749544 -2.143231 0.142634 -0.272378 0.754306 -0.163511 0.457513 0.071870 -0.374009 -2.491237 -7.236812 35.854542 6.106411 -5.189278 -1.819005 4.761631 -0.318013 -0.305341 0.178193 0.001749 0.048948 -0.192783 -0.323438 +23.686234 161.253693 0.765744 -1.725216 -21.339085 -5.937430 -1.456206 -5.890038 0.603888 -14.389922 2.487462 30.867016 -0.467344 0.106356 -0.154289 0.573984 0.274580 0.705853 2.280473 6.587149 -35.320629 11.818334 -6.785094 50.434319 -0.430463 0.055359 0.069255 0.047685 -0.249134 0.325109 10.032748 -6.845631 16.477690 6.122768 -5.138239 9.398839 4.615995 -3.864534 7.240083 -1.097282 6.626784 11.815160 -13.572453 10.636536 -15.706458 -12.353410 -5.602449 -4.248758 -36.042843 -8.030957 -3.102039 4.601740 -14.035872 -2.149399 0.133448 -0.237907 0.710573 -0.141117 0.425247 0.087278 -1.906721 -4.765110 -6.783354 33.498581 4.657531 -5.353775 -2.893635 5.280101 -0.335961 -0.289823 0.150717 0.009177 0.034345 -0.191540 -0.297698 +24.157162 161.186646 1.785058 -1.249826 -20.869225 -6.807131 -2.470140 -6.057405 1.476139 -14.745549 2.538543 31.418257 -0.432540 0.122809 -0.118299 0.539019 0.236929 0.654842 3.155160 6.387020 -34.742477 12.157935 -6.587288 47.521358 -0.401949 0.028409 0.084073 0.027185 -0.198550 0.322055 11.136605 -7.642877 16.154589 5.693991 -5.246580 9.628061 3.579639 -3.931761 7.420284 -1.653527 6.734112 10.493245 -13.025815 10.277324 -13.970187 -10.855429 -3.764762 -3.729257 -33.783527 -6.491786 -3.186473 5.447280 -14.330245 -2.110219 0.118431 -0.211203 0.668036 -0.112853 0.383642 0.107391 -3.683405 -6.718032 -6.234053 31.197969 3.397299 -5.334574 -3.333689 6.100046 -0.351692 -0.279308 0.125034 0.004580 0.031082 -0.184717 -0.270690 +24.543816 161.174515 2.710782 -0.406381 -20.720381 -8.002530 -3.568417 -6.142345 2.381830 -15.562885 2.771184 31.928183 -0.431420 0.139155 -0.105472 0.504654 0.206354 0.612895 3.927871 6.285587 -33.950470 12.257437 -6.179771 44.537949 -0.377832 0.010202 0.097563 0.016162 -0.162029 0.312303 11.388369 -8.015214 16.041689 5.233425 -5.344669 10.024038 2.808575 -3.967666 7.848491 -1.716463 6.841720 9.684943 -12.925175 10.299583 -13.257487 -9.800729 -2.117863 -3.490895 -31.199598 -5.060237 -3.232592 6.552756 -14.953437 -2.155915 0.095794 -0.212339 0.647986 -0.088289 0.351028 0.110882 -4.967220 -8.380969 -6.015828 28.897964 2.465482 -5.281107 -4.415234 5.208174 -0.258431 -0.287061 0.123772 -0.011843 0.040513 -0.164899 -0.262101 +24.924366 161.217102 3.655488 0.191367 -20.605526 -9.026384 -4.248478 -6.148026 3.274610 -16.468519 3.030528 32.124470 -0.422023 0.168055 -0.076619 0.478701 0.179473 0.574375 4.985765 6.271129 -32.759853 12.047461 -5.575088 40.923805 -0.353344 -0.003018 0.115113 0.009624 -0.103811 0.301709 11.800886 -8.365379 15.511666 4.840786 -5.417903 10.482122 2.078977 -3.982810 8.514678 -2.136933 7.185528 9.123150 -11.892690 9.930886 -12.057791 -8.794961 -0.788652 -3.314827 -29.166594 -3.931620 -3.237716 8.134041 -15.434363 -2.293288 0.070375 -0.218305 0.620836 -0.059979 0.313135 0.127324 -5.318571 -9.627439 -5.699814 25.206091 1.572420 -4.848063 -4.352842 4.992142 -0.188344 -0.293107 0.122209 -0.029410 0.067850 -0.151368 -0.242778 +25.193609 161.167664 4.602196 1.085115 -20.448780 -9.963815 -4.886878 -6.181475 3.799244 -17.912523 3.479262 32.480518 -0.424365 0.174109 -0.074736 0.492259 0.198889 0.570425 5.998796 6.188677 -31.345177 11.295822 -4.744587 36.859245 -0.355300 -0.017430 0.108482 0.028617 -0.095045 0.306364 12.166010 -8.641418 14.318472 4.200000 -5.463840 11.083456 1.172160 -4.028099 9.788781 -2.614137 7.395840 8.664772 -11.645167 9.604754 -12.155647 -7.988835 0.250729 -3.292256 -26.588480 -3.090108 -3.088936 8.976839 -15.737493 -2.332803 0.069957 -0.200423 0.609161 -0.055942 0.308886 0.138074 -4.957414 -10.655613 -5.491759 21.727760 0.616460 -4.410783 -4.809480 5.624505 -0.204448 -0.296788 0.102599 -0.026947 0.069686 -0.156954 -0.233054 +25.456829 161.244141 5.453497 1.736750 -20.427681 -11.156069 -5.374030 -6.222365 4.504257 -19.052168 3.874412 33.023182 -0.437924 0.150381 -0.100211 0.518343 0.239356 0.593834 7.190833 6.185464 -29.300119 10.783119 -3.999894 32.469421 -0.371075 -0.006022 0.088833 0.051988 -0.131293 0.303353 12.465596 -8.790054 13.584994 3.781213 -5.458520 11.813186 0.470457 -3.974958 11.109085 -2.747384 7.548503 8.673517 -11.898371 9.585697 -13.587842 -7.373384 0.819262 -3.283963 -24.075962 -2.472735 -2.910372 9.845958 -15.636508 -2.342551 0.087705 -0.194055 0.618596 -0.079389 0.329918 0.124256 -5.216070 -11.429153 -5.208989 19.450302 -0.398579 -4.194067 -5.936078 6.376239 -0.240710 -0.294362 0.102938 -0.015351 0.064767 -0.163053 -0.240143 +25.698383 161.138306 6.436345 2.892162 -20.001850 -12.208860 -6.475965 -6.325407 4.848981 -20.120022 4.218717 33.639622 -0.471859 0.164892 -0.121375 0.539506 0.249544 0.620807 7.586610 5.788868 -27.347414 10.269388 -3.381520 28.162188 -0.379934 -0.012640 0.076778 0.068466 -0.149705 0.314046 11.988592 -8.701845 12.435961 3.351420 -5.639734 12.286113 0.189429 -4.091787 12.314336 -2.659556 7.639043 8.754080 -12.352654 9.730159 -14.466087 -7.064513 1.410851 -3.125251 -21.823694 -1.374560 -2.774240 10.792620 -16.393957 -2.506936 0.083639 -0.192459 0.639503 -0.083278 0.337054 0.113143 -5.042308 -11.842555 -5.062421 16.680347 -0.995635 -3.812165 -6.916070 6.431099 -0.238458 -0.312520 0.098612 -0.020152 0.058101 -0.160936 -0.261275 +25.910547 160.746063 7.528904 3.924113 -19.865732 -12.489672 -7.217910 -6.430526 4.354159 -21.375229 4.735176 34.472313 -0.499915 0.194250 -0.133975 0.542332 0.238445 0.632616 7.996422 5.566041 -26.023098 9.874848 -2.810990 23.790653 -0.369057 -0.045052 0.063140 0.079297 -0.146567 0.323266 12.182547 -8.621762 10.518632 2.661422 -5.556366 12.418596 -0.555461 -4.011299 13.401420 -2.376703 7.685660 8.586832 -12.654561 10.033906 -13.944119 -6.880316 2.327541 -2.986557 -19.112417 -0.204298 -2.457000 11.087448 -18.449564 -2.716679 0.058582 -0.170983 0.632414 -0.063287 0.314534 0.098669 -4.668498 -12.376065 -4.947219 13.996045 -1.585193 -3.327476 -7.717884 7.298539 -0.326011 -0.331249 0.070305 -0.030487 0.039385 -0.151176 -0.279891 +26.052021 160.273605 8.584429 4.806239 -19.632235 -13.064582 -7.715621 -6.342493 4.432799 -22.586929 5.274814 34.970837 -0.489861 0.185404 -0.143962 0.552735 0.251568 0.656764 8.671461 5.407711 -24.186220 8.888281 -2.175031 19.701267 -0.375103 -0.054682 0.048656 0.082436 -0.172786 0.338558 11.768655 -8.262827 9.238684 2.377448 -5.469508 12.582779 -0.662310 -3.947859 14.229674 -1.736867 7.117267 8.668033 -13.515453 10.301500 -14.036817 -6.721479 2.992761 -2.866513 -16.485685 0.725539 -2.119512 11.011719 -19.122166 -2.659690 0.055014 -0.146449 0.618094 -0.061560 0.326148 0.087453 -5.208820 -12.966419 -4.296618 11.950583 -2.782593 -2.860738 -7.771271 10.034022 -0.503808 -0.323195 0.049335 -0.010854 0.009566 -0.161316 -0.285744 +26.153206 159.678543 9.662126 5.672128 -18.970856 -13.546414 -8.245645 -6.402678 4.487336 -23.962164 5.919540 35.867405 -0.500612 0.185703 -0.158949 0.570092 0.266128 0.686847 9.002768 5.130283 -22.726898 7.715869 -1.720452 16.748243 -0.381572 -0.063968 0.036125 0.094156 -0.196960 0.349873 10.852424 -7.770256 7.820620 2.277093 -5.488703 12.662539 -0.247948 -3.966291 15.092892 -1.069332 6.490489 9.018487 -14.107321 10.396463 -14.210186 -6.334041 3.310056 -2.894783 -14.495990 0.994944 -1.739919 10.128114 -18.132761 -2.339853 0.050780 -0.135380 0.618027 -0.060182 0.335982 0.076359 -5.528442 -13.431081 -3.641950 9.321138 -4.092422 -2.240047 -7.630692 11.321389 -0.535636 -0.327795 0.033850 -0.002989 -0.009905 -0.170114 -0.299785 +26.242157 159.056427 10.724662 6.239224 -18.439138 -13.832105 -8.276051 -6.393949 4.521906 -25.458183 6.643927 36.547966 -0.496688 0.175647 -0.160750 0.577563 0.277503 0.699962 9.444031 4.985506 -21.522278 6.333249 -1.344602 14.636082 -0.385986 -0.062631 0.034807 0.097818 -0.211049 0.349949 10.432845 -7.430657 6.505866 2.204266 -5.445946 12.615464 -0.008785 -3.937363 15.670188 -0.808022 5.748035 9.652847 -14.600969 10.175768 -14.012423 -6.143517 2.936904 -2.591632 -12.561704 1.405478 -1.361714 8.655087 -15.916533 -1.840423 0.055462 -0.137581 0.613813 -0.062066 0.345170 0.075847 -5.586308 -13.156336 -2.825740 7.037210 -5.722049 -1.792325 -8.625985 11.727399 -0.570697 -0.324443 0.029863 0.004498 -0.014347 -0.180219 -0.300817 +26.399019 158.383530 11.562453 6.533475 -17.922400 -14.316073 -7.979004 -6.343099 4.786395 -27.093172 7.461286 37.119217 -0.493312 0.173595 -0.156623 0.559692 0.264990 0.673086 9.796853 4.936187 -20.476849 5.442249 -1.156112 13.837215 -0.376387 -0.056508 0.047114 0.086998 -0.195152 0.339814 10.242302 -7.191998 6.184825 2.204404 -5.354572 12.535324 0.027349 -3.832601 15.604261 -0.881193 5.293744 10.168983 -14.078119 9.615062 -13.474258 -5.599453 2.358453 -2.155710 -10.843760 1.645387 -0.994144 7.265853 -13.519618 -1.419459 0.052831 -0.154183 0.611387 -0.058915 0.335555 0.077141 -5.829693 -12.584954 -2.257865 5.677421 -6.869461 -1.663387 -10.191896 10.472950 -0.491181 -0.326507 0.047627 0.001029 -0.000401 -0.167178 -0.291572 +26.556192 157.718582 12.271540 6.380319 -17.821911 -14.912741 -7.214255 -6.308482 5.186727 -28.627035 8.357115 37.895264 -0.502947 0.189029 -0.148456 0.539859 0.231104 0.662457 10.433414 5.125310 -19.600311 4.987060 -1.078429 14.101810 -0.372256 -0.046240 0.052173 0.071082 -0.183588 0.332093 10.780457 -7.219910 6.421147 2.165573 -5.227078 12.534270 -0.395986 -3.628470 15.337234 -0.903387 4.694060 10.529661 -13.867648 9.058832 -13.140133 -5.473867 1.789398 -1.842234 -9.069353 1.955936 -0.692501 6.765570 -11.384302 -1.172269 0.053850 -0.183758 0.631207 -0.062547 0.330982 0.076491 -6.667338 -12.042867 -1.616639 5.184549 -7.902985 -1.719086 -11.263196 10.000395 -0.429110 -0.327843 0.070151 -0.018191 0.016333 -0.155435 -0.295633 +26.731493 156.977783 12.911215 5.749510 -17.947865 -14.876196 -5.851326 -6.331138 5.040051 -29.888397 9.278985 38.921448 -0.474540 0.157612 -0.148240 0.569026 0.268236 0.676936 11.234821 5.722392 -20.142626 4.913271 -1.063747 15.794083 -0.385339 -0.048800 0.049852 0.078833 -0.207793 0.343647 11.758659 -7.348148 6.340791 2.178893 -4.991047 12.479827 -0.749495 -3.448191 15.302140 -0.682128 4.096339 10.429544 -13.748868 8.698037 -13.057429 -5.074018 1.774790 -1.874582 -7.806669 1.625470 -0.471274 5.780463 -9.237125 -0.904145 0.077873 -0.146096 0.616830 -0.073632 0.348433 0.089247 -7.607245 -12.092249 -1.168332 4.679462 -8.638221 -1.543763 -11.696060 10.721169 -0.482377 -0.313834 0.042196 0.013536 -0.010936 -0.183904 -0.284186 +26.891027 156.377167 13.327655 5.102214 -18.261744 -14.989128 -4.493482 -6.281982 4.900490 -31.179941 10.266704 39.922405 -0.422486 0.141373 -0.125782 0.568139 0.268646 0.660581 11.452759 6.226135 -20.913805 5.716265 -1.264047 17.816898 -0.393678 -0.046054 0.063594 0.051667 -0.198186 0.366875 12.710560 -7.537663 7.008316 2.244766 -4.738725 12.402573 -1.175083 -3.204752 14.764139 -0.712356 3.531544 10.237663 -13.413303 8.135630 -12.556401 -4.845258 1.259388 -1.474052 -7.046921 1.925379 -0.417065 5.304293 -7.158357 -0.725759 0.087746 -0.122387 0.600189 -0.073734 0.360527 0.110370 -8.791560 -11.651553 -0.099968 4.421490 -9.981215 -1.359460 -10.710456 12.106461 -0.460870 -0.293659 0.037225 0.048437 -0.027140 -0.194823 -0.255111 +27.101107 156.043045 13.694946 4.697536 -18.423611 -15.267931 -3.937472 -6.205709 5.060474 -31.456608 10.751298 40.701042 -0.399266 0.143924 -0.117422 0.520904 0.218609 0.623662 10.952353 6.396293 -21.324078 7.208697 -1.647410 19.398800 -0.376667 -0.046153 0.068833 0.013533 -0.184599 0.366184 12.932963 -7.529281 8.156934 2.585635 -4.603326 12.251548 -1.017434 -3.043784 13.895927 -0.493754 3.309174 10.327525 -13.491726 8.260924 -11.463746 -4.908482 0.669472 -1.020941 -7.123051 2.385113 -0.504608 5.168424 -5.807739 -0.632258 0.076307 -0.125171 0.589326 -0.064653 0.347131 0.100362 -10.074076 -10.977517 0.428025 4.954909 -10.342515 -1.620351 -11.143819 11.153753 -0.333773 -0.279048 0.050680 0.047705 -0.038492 -0.172133 -0.248216 +27.194288 155.846420 13.936865 4.701903 -18.551880 -15.282547 -4.043174 -6.009355 4.924394 -30.971451 10.876100 41.320034 -0.432705 0.161970 -0.126431 0.499012 0.195372 0.622888 10.194672 6.491040 -21.727839 8.407451 -1.928726 20.240858 -0.370883 -0.039833 0.072352 0.009404 -0.178451 0.355870 12.588210 -7.230810 8.310842 2.648266 -4.500310 12.434989 -0.794833 -2.930981 14.160366 0.025211 3.324046 10.314309 -14.083448 8.724505 -12.161400 -5.362034 0.395737 -0.855348 -6.332723 2.787757 -0.322037 4.268990 -5.250574 -0.593896 0.054698 -0.168896 0.609935 -0.056865 0.342853 0.082302 -9.795193 -10.363143 0.388712 4.674984 -9.632312 -1.531737 -10.542274 10.957416 -0.288951 -0.296860 0.082814 0.021042 -0.015547 -0.149623 -0.267156 +27.134975 155.743454 14.119104 4.866178 -18.754177 -14.911173 -4.413141 -5.829868 4.291426 -30.403328 10.966003 42.058308 -0.443076 0.162847 -0.135465 0.496240 0.209208 0.629194 9.746473 6.590886 -21.979713 8.958549 -1.952113 20.073042 -0.368603 -0.040893 0.070331 0.021396 -0.177149 0.351628 11.625760 -6.701251 7.977545 2.728663 -4.390416 12.595148 -0.174122 -2.894235 14.726892 0.475400 3.593171 10.128131 -14.531621 9.306484 -12.766029 -5.640609 0.840139 -0.923499 -6.266956 3.086096 -0.221611 3.600195 -5.750442 -0.585954 0.034334 -0.180985 0.599332 -0.045491 0.343424 0.071668 -8.850672 -10.132401 -0.220471 3.726614 -7.886056 -1.196005 -9.602070 9.824903 -0.204288 -0.304721 0.090413 0.018053 -0.004247 -0.143547 -0.270982 +27.062412 155.897614 14.185462 4.702141 -19.053236 -14.384278 -4.415975 -5.643900 3.719175 -29.743181 10.891949 42.371990 -0.467203 0.202572 -0.131737 0.477178 0.180415 0.614331 9.676705 6.627028 -21.723570 9.503357 -1.894399 18.747835 -0.350951 -0.057369 0.070556 0.023243 -0.141812 0.347057 11.220742 -6.430196 7.645423 2.674302 -4.319846 12.615208 -0.026985 -2.858220 14.937925 0.489133 3.992332 10.205354 -13.973082 9.419083 -11.967360 -5.423677 1.658094 -0.831925 -6.988938 3.735090 -0.181672 3.191122 -7.736469 -0.655280 0.002146 -0.193190 0.595066 -0.021536 0.313398 0.066251 -8.299221 -9.855960 -1.085185 3.824841 -5.498709 -1.199955 -9.165343 8.670361 -0.180918 -0.323850 0.091876 -0.007959 0.012804 -0.121144 -0.277245 +26.992191 156.161606 14.099715 4.555770 -19.342144 -14.047582 -4.414412 -5.385990 3.318237 -29.494419 10.859699 42.231865 -0.492666 0.209197 -0.137513 0.494581 0.188470 0.623404 10.090039 6.664544 -21.057207 9.166448 -1.611408 16.985708 -0.349878 -0.065192 0.065160 0.044501 -0.145483 0.336497 10.774750 -6.179006 7.997629 2.765304 -4.189679 12.617057 0.178246 -2.758378 14.784556 0.270554 4.443264 10.026545 -13.477418 9.427879 -11.957512 -5.108586 2.557919 -1.056708 -8.722729 3.730608 -0.403459 3.220789 -9.435929 -0.753071 0.013643 -0.185955 0.608641 -0.027546 0.303895 0.070405 -8.267813 -9.953661 -2.072025 5.138704 -3.423807 -1.551119 -10.128530 8.562395 -0.314663 -0.335373 0.075550 -0.025827 0.014133 -0.128854 -0.289766 +26.987343 156.460098 13.970010 4.490609 -19.488827 -13.573097 -4.599210 -5.061740 2.984394 -28.941542 10.625731 41.845757 -0.471325 0.195291 -0.129447 0.502002 0.202721 0.628204 10.613971 6.722864 -20.567158 8.240331 -1.278735 15.357640 -0.356053 -0.074055 0.072337 0.041762 -0.152517 0.348630 9.903635 -5.862104 8.455859 3.012755 -4.150947 12.518068 0.777431 -2.790006 14.417215 0.442027 4.229431 9.528186 -14.437084 9.750953 -12.091187 -5.485703 3.754303 -1.016181 -10.247355 4.713041 -0.688243 3.366843 -13.604311 -0.925722 0.015632 -0.167266 0.593708 -0.021514 0.313167 0.081685 -8.639348 -10.035387 -2.757028 6.858379 -1.634200 -1.842050 -10.581150 9.948848 -0.556240 -0.329964 0.059227 -0.008103 -0.000885 -0.144429 -0.282356 +27.042225 156.783188 13.806610 4.659094 -19.197525 -13.044544 -5.068776 -4.902409 2.437808 -28.315224 10.283175 41.516159 -0.474125 0.171340 -0.140275 0.529055 0.236669 0.654004 10.537061 6.465377 -20.141174 7.708049 -1.064868 13.489205 -0.368797 -0.052746 0.065490 0.060202 -0.180087 0.338810 9.260909 -5.600124 8.508336 2.984706 -4.083634 12.421692 0.997052 -2.794501 14.303719 0.456483 4.345447 9.565057 -14.154104 9.709458 -13.109565 -5.049250 4.453298 -1.191234 -12.520348 4.535635 -1.130031 3.057467 -15.342595 -1.053553 0.040708 -0.168739 0.605905 -0.045994 0.332512 0.080146 -8.760953 -10.089581 -3.432847 8.951596 -0.166791 -2.195595 -10.796643 11.474017 -0.817903 -0.323014 0.062987 -0.002441 0.002310 -0.161951 -0.287229 +27.070889 157.234970 13.528239 4.903712 -18.720329 -12.927723 -5.512418 -4.715675 2.360307 -27.731236 9.908867 41.028164 -0.477246 0.156903 -0.135797 0.543174 0.249506 0.661473 10.562078 6.176329 -19.512178 6.723522 -0.852359 11.850883 -0.373618 -0.028442 0.074022 0.066938 -0.187156 0.320934 8.727835 -5.533699 9.303082 3.017570 -4.114739 12.357384 1.063477 -2.808567 13.785796 -0.230280 4.581351 9.294343 -13.841100 9.295181 -13.909553 -5.128854 4.818499 -1.252134 -15.042760 4.622199 -1.686208 3.063397 -16.986532 -1.240066 0.067187 -0.186711 0.623804 -0.067853 0.339453 0.088623 -8.651815 -9.830698 -3.828869 10.705467 0.940320 -2.467958 -10.391334 13.223785 -1.037322 -0.319277 0.078133 -0.009016 0.022561 -0.173202 -0.286916 +26.986586 157.590607 13.186358 5.012701 -18.067570 -12.930072 -5.372014 -4.466617 2.459729 -27.557915 9.784141 40.590881 -0.471680 0.123901 -0.138377 0.574212 0.291438 0.664764 10.969322 6.010783 -18.855867 5.319505 -0.622480 10.490996 -0.391638 0.001657 0.076048 0.083402 -0.204681 0.308211 8.584237 -5.565907 9.963150 2.858659 -4.056869 12.347676 0.719612 -2.744308 13.410662 -1.246601 4.708414 9.410886 -13.012686 8.383268 -15.060739 -4.918186 5.557430 -1.442591 -17.879261 4.507411 -2.341301 2.711143 -20.059032 -1.497263 0.110704 -0.189878 0.641546 -0.104537 0.361338 0.103874 -8.360275 -9.815798 -4.342082 13.306748 1.874758 -2.877626 -9.748920 15.809143 -1.339157 -0.310267 0.090705 0.002475 0.039870 -0.190156 -0.273932 +26.906708 157.760803 12.829111 4.854756 -17.224089 -12.678609 -4.929375 -4.249716 2.338118 -27.427681 9.810705 40.501656 -0.510225 0.125282 -0.146793 0.588786 0.301252 0.661127 11.230856 5.995492 -18.778353 4.613470 -0.515085 9.511367 -0.387786 0.020918 0.085521 0.104535 -0.200386 0.278312 8.805017 -5.612277 10.296252 2.588215 -3.922820 12.294346 0.189282 -2.574376 13.151801 -2.070658 5.127629 9.181087 -11.833127 7.709471 -16.023748 -4.859659 6.526140 -1.717043 -20.353580 4.569479 -2.956875 1.867328 -24.672789 -1.792726 0.130983 -0.216984 0.673472 -0.124453 0.351242 0.108111 -7.566781 -9.982410 -4.962242 15.302258 2.886967 -3.070437 -7.576477 17.814629 -1.349365 -0.329445 0.111982 -0.025851 0.075409 -0.186052 -0.283825 +26.815115 157.864319 12.497855 4.924721 -16.216825 -12.316346 -4.654912 -4.099193 2.081384 -27.293919 9.813270 40.508087 -0.518692 0.121333 -0.146329 0.612912 0.322181 0.662344 11.254688 5.856118 -18.849113 3.853991 -0.424935 8.387758 -0.391993 0.027134 0.079190 0.125100 -0.199861 0.266143 9.296464 -5.855909 10.270830 2.076872 -3.821786 12.133689 -0.715761 -2.497265 12.911652 -3.107941 5.499163 9.035397 -10.670680 6.946041 -16.242304 -5.356088 7.391653 -2.020617 -22.447056 4.581450 -3.540382 0.937092 -29.087660 -2.009561 0.155863 -0.205404 0.681187 -0.143718 0.346435 0.119327 -5.987111 -9.926026 -5.926064 17.180820 4.220630 -3.234891 -5.696939 19.242548 -1.326080 -0.329774 0.102066 -0.029986 0.086474 -0.194954 -0.278788 +26.659124 157.943207 12.169959 4.859987 -15.116076 -11.892836 -4.337543 -3.943635 1.862045 -26.815838 9.700011 40.556553 -0.550309 0.137075 -0.154518 0.616718 0.314161 0.663701 11.290402 5.702821 -18.866014 3.467953 -0.388343 6.996898 -0.385153 0.036794 0.063159 0.140074 -0.196789 0.244390 9.748339 -5.940992 10.234177 1.713615 -3.667295 11.879894 -1.411407 -2.315864 12.557143 -4.324069 5.610637 8.939877 -9.744225 5.958096 -16.518559 -6.014820 8.367314 -2.558960 -24.833706 4.231818 -4.135959 -1.290569 -33.533619 -1.890175 0.168390 -0.217421 0.698695 -0.162414 0.330731 0.109340 -4.295988 -9.792051 -7.065080 19.297012 5.752541 -3.388582 -3.293059 19.013685 -1.064755 -0.333000 0.109641 -0.054212 0.107591 -0.183210 -0.286600 +26.515316 157.901016 11.759671 4.807269 -13.484087 -11.489164 -4.137255 -3.910171 1.484195 -26.640656 9.700407 40.882957 -0.524699 0.123896 -0.152201 0.611788 0.313108 0.634553 11.033256 5.473466 -19.081562 3.073832 -0.392885 5.774340 -0.383263 0.045491 0.065881 0.128239 -0.191084 0.247199 10.058475 -6.178772 10.699552 1.380789 -3.634420 11.328674 -2.047322 -2.317542 11.489108 -5.245039 5.890705 9.065252 -8.738092 5.379755 -16.304274 -6.554654 9.050294 -2.446669 -27.858294 4.502713 -5.078484 -2.840371 -38.116318 -1.847121 0.183287 -0.197429 0.691635 -0.174104 0.329862 0.116615 -3.358305 -9.287728 -7.815396 22.462214 6.949452 -3.673169 -0.902472 17.718649 -0.758431 -0.319374 0.112783 -0.037015 0.100534 -0.177346 -0.266515 +26.306656 157.776184 11.267117 4.839050 -11.727406 -11.001966 -3.834506 -3.868490 1.047179 -26.601889 9.774189 41.098186 -0.555251 0.145967 -0.167107 0.601194 0.280988 0.630159 10.576476 5.318708 -19.630301 2.764632 -0.406107 4.771560 -0.373656 0.059760 0.056095 0.120614 -0.189217 0.236221 9.857733 -6.068625 10.935959 1.167104 -3.554060 10.888759 -2.255041 -2.191351 10.775484 -6.065399 5.740546 9.245204 -7.850909 4.512421 -16.660528 -7.384904 9.359608 -2.757970 -30.861374 3.993416 -5.845351 -4.789071 -41.530552 -1.607389 0.185243 -0.212717 0.718226 -0.190144 0.314913 0.095968 -1.855538 -8.743054 -8.532251 25.217468 7.756401 -3.927855 1.596913 16.263815 -0.455132 -0.326537 0.136692 -0.056528 0.111847 -0.149478 -0.281023 +26.114286 157.597610 10.723449 4.716276 -9.624189 -10.479853 -3.739584 -4.021657 0.548557 -26.112980 9.656566 41.748707 -0.577937 0.177641 -0.168691 0.592469 0.254534 0.604110 10.067262 5.205142 -20.363268 2.529005 -0.425975 4.069306 -0.367860 0.063679 0.055492 0.114634 -0.160620 0.236597 9.802147 -5.967939 10.979726 1.028962 -3.471475 10.523513 -2.402449 -2.058527 10.217140 -7.130763 5.573710 9.386131 -6.328254 3.203214 -16.783506 -8.484742 8.957127 -3.029775 -33.953762 3.292509 -6.626560 -7.017308 -44.012741 -1.226701 0.182797 -0.223873 0.739750 -0.195965 0.298846 0.097647 0.458223 -7.724097 -9.000288 27.013821 8.032151 -4.087436 4.054659 14.477692 -0.181294 -0.339967 0.156815 -0.072456 0.133511 -0.122512 -0.276555 +25.916487 157.455811 10.199613 4.670084 -7.338297 -10.300797 -3.895435 -4.159964 0.582911 -25.178894 9.282801 42.194668 -0.574634 0.164542 -0.163019 0.595336 0.262054 0.593679 9.369881 4.891112 -20.577894 2.434323 -0.441372 3.148265 -0.371523 0.090557 0.064148 0.115273 -0.154506 0.219829 9.431767 -5.738033 11.215042 0.952251 -3.324126 10.186142 -2.411686 -1.925531 9.619166 -7.584638 5.099226 10.090036 -4.995748 2.242509 -17.106539 -10.570612 7.410359 -3.246912 -36.271412 2.644565 -7.413864 -8.593998 -45.261997 -1.018589 0.203851 -0.247843 0.754265 -0.214596 0.305387 0.107132 3.029017 -5.952456 -8.946297 28.792797 7.620810 -4.380876 5.840284 12.691720 -0.065811 -0.335193 0.182003 -0.076656 0.159745 -0.125077 -0.265792 +25.745251 157.297531 9.693662 4.423495 -4.274629 -10.228219 -3.893450 -4.529612 0.806820 -24.042398 8.784903 42.971752 -0.602301 0.173217 -0.169910 0.604564 0.269073 0.592192 8.490770 4.424596 -20.520472 2.333200 -0.479128 1.894250 -0.373120 0.099132 0.068494 0.129599 -0.148509 0.208769 9.601429 -5.766817 11.069847 0.767838 -3.276084 9.994817 -2.749448 -1.874221 9.415981 -7.590339 4.250040 10.665347 -4.116496 1.322327 -17.491209 -13.358111 5.516834 -4.044376 -37.003029 1.573470 -7.682173 -11.342407 -45.520077 -0.242328 0.208400 -0.270839 0.774051 -0.221445 0.304286 0.111403 6.133065 -4.313951 -9.096095 30.607971 7.255584 -4.688371 7.064330 11.090743 -0.062798 -0.352996 0.198008 -0.092206 0.185160 -0.120486 -0.270013 +25.531706 157.166061 9.101324 4.161376 -0.834290 -10.446733 -3.975892 -4.945456 1.404327 -22.585575 8.050953 43.591694 -0.598067 0.133688 -0.180868 0.637798 0.322711 0.592698 7.473336 3.811609 -20.074999 2.251366 -0.496543 0.502736 -0.388241 0.113412 0.065960 0.156185 -0.169070 0.196699 9.818007 -5.846576 11.486664 0.534102 -3.122881 9.775263 -3.278131 -1.817143 8.961064 -7.373227 3.353601 11.186131 -2.572386 0.401389 -18.192921 -16.107353 3.484877 -5.033530 -36.699684 0.031289 -7.538526 -15.536052 -45.114285 1.264453 0.244420 -0.255367 0.777872 -0.247589 0.321157 0.124479 9.469285 -2.864840 -9.128163 32.647564 6.604574 -5.104352 7.752701 10.238572 -0.132748 -0.350924 0.191467 -0.076953 0.187508 -0.140899 -0.258916 +25.209158 156.818207 8.386859 3.828655 2.023537 -10.117173 -3.468967 -5.236921 1.043330 -21.544348 7.663456 44.343750 -0.570909 0.120236 -0.179599 0.641667 0.328595 0.586454 6.861521 3.596713 -20.530397 1.824625 -0.504063 -0.356226 -0.391018 0.111424 0.060805 0.149690 -0.173360 0.206386 9.599277 -5.563447 11.689716 0.498821 -2.836181 9.123884 -3.280163 -1.643335 7.986537 -6.808116 2.327319 12.055702 -1.516734 -0.287329 -17.221106 -18.193110 1.999612 -5.655128 -37.793228 -1.652143 -7.366753 -18.318998 -44.206226 2.192696 0.253549 -0.227260 0.763649 -0.250796 0.325911 0.129709 11.832187 -1.481771 -8.924092 35.450375 6.280396 -5.441105 8.288719 9.165815 -0.190472 -0.337215 0.176245 -0.055525 0.165307 -0.149095 -0.246122 +24.847097 156.383591 7.533623 3.721751 4.879978 -9.477643 -3.042947 -5.589835 -0.035472 -20.616989 7.408252 45.445644 -0.569450 0.122345 -0.178182 0.636411 0.314559 0.583278 5.886562 3.440506 -21.692240 1.394545 -0.511669 -0.788263 -0.385715 0.113102 0.061480 0.142489 -0.169409 0.200891 8.678166 -5.064479 11.722814 0.517921 -2.636893 8.438732 -2.811278 -1.523808 7.031809 -6.231205 1.407000 12.914324 -0.570672 -0.875652 -16.285509 -19.611526 0.930178 -6.256313 -40.387711 -3.769873 -7.148487 -19.535673 -43.007294 2.421836 0.257133 -0.225797 0.766129 -0.251670 0.318736 0.129937 13.758798 -0.240966 -8.900966 38.669701 6.552589 -5.696430 8.528685 8.375411 -0.248222 -0.335611 0.175233 -0.060468 0.161823 -0.148666 -0.248106 +24.535866 155.949326 6.433429 3.802368 7.748441 -8.602230 -3.077964 -6.018642 -1.701371 -19.535862 7.034848 46.534950 -0.585153 0.133042 -0.183780 0.639225 0.302339 0.601442 4.462458 3.274096 -23.445269 1.319420 -0.507568 -0.766699 -0.391103 0.122348 0.046915 0.143838 -0.178774 0.197510 7.590504 -4.562126 11.586148 0.471536 -2.526878 7.937625 -2.249391 -1.468629 6.394088 -5.641346 0.345929 13.352772 0.160228 -1.450039 -16.353872 -20.509108 0.026955 -6.960819 -43.833282 -6.510883 -6.700148 -19.920439 -41.955315 2.320637 0.264619 -0.233541 0.786740 -0.264726 0.323732 0.122255 15.006690 1.179326 -9.170542 42.392532 7.808506 -5.653571 8.531593 7.388583 -0.286677 -0.334315 0.180338 -0.073642 0.163719 -0.148938 -0.261412 +24.124430 155.570068 5.179022 3.836435 10.442585 -7.864359 -2.965987 -6.365535 -3.638305 -18.362511 6.733033 47.964172 -0.580414 0.108383 -0.186810 0.656527 0.329477 0.615084 3.173679 3.271018 -25.314598 0.993819 -0.473843 -0.018452 -0.403016 0.140582 0.047083 0.152491 -0.197651 0.190691 6.377074 -4.030612 11.631017 0.527748 -2.412762 7.654690 -1.498821 -1.430330 5.981479 -5.577111 -1.031725 13.792198 0.455371 -2.338925 -17.048454 -21.250620 -0.795422 -7.357775 -47.492542 -9.091974 -6.239094 -20.852167 -42.617462 2.610243 0.285258 -0.242645 0.793194 -0.282571 0.342326 0.124836 15.980021 3.321923 -9.372711 45.732521 9.482300 -5.338425 8.587959 7.091434 -0.304551 -0.328837 0.188460 -0.063272 0.170002 -0.163722 -0.257812 +23.753006 155.345917 3.945578 3.863834 14.059731 -7.228943 -3.319113 -6.905756 -5.304638 -16.388081 5.875019 49.268200 -0.583609 0.089593 -0.195664 0.671628 0.358817 0.611225 0.932183 2.946592 -26.931299 1.248913 -0.446963 1.034098 -0.412388 0.143520 0.052484 0.164705 -0.208289 0.192006 5.306148 -3.734197 11.501960 0.565875 -2.536134 7.531897 -0.809094 -1.623996 5.838099 -5.223068 -2.808840 14.069006 0.850660 -3.432649 -17.701313 -22.089006 -2.057857 -7.494957 -50.515770 -11.524740 -5.521890 -23.292805 -43.900520 3.624616 0.296318 -0.244097 0.797204 -0.289495 0.356175 0.132081 16.767611 5.999707 -9.231911 48.348701 11.014623 -5.011138 8.688776 8.261131 -0.349238 -0.337626 0.191589 -0.051924 0.172442 -0.171174 -0.251248 +23.309441 155.264282 2.826828 4.111592 17.674257 -6.881403 -3.913498 -7.288972 -6.164492 -14.497955 4.975121 49.818653 -0.587333 0.066806 -0.206933 0.707021 0.402999 0.615155 -1.893774 2.377265 -27.814182 2.409767 -0.408580 2.047779 -0.431174 0.151502 0.051649 0.186766 -0.222262 0.192969 4.145580 -3.496328 11.304860 0.424542 -2.723857 7.577475 -0.401002 -1.913743 5.976470 -4.913081 -4.037910 14.807783 2.343868 -4.454819 -18.385695 -22.553858 -4.045407 -7.175439 -52.633076 -13.663358 -4.702799 -26.666391 -45.610611 5.192018 0.324264 -0.229451 0.810790 -0.309627 0.374565 0.148554 17.999743 9.289962 -8.921168 50.278049 12.624461 -4.646735 8.624006 9.929495 -0.432258 -0.344826 0.185796 -0.038409 0.173140 -0.187924 -0.244040 +22.793024 155.210022 1.698605 4.493822 20.482740 -6.421607 -4.431934 -7.307833 -7.189582 -12.660108 4.311404 50.303913 -0.582762 0.060059 -0.201322 0.736502 0.447602 0.617016 -4.645497 2.134581 -29.104486 3.654890 -0.372033 4.280870 -0.440022 0.144040 0.054767 0.213628 -0.210173 0.195853 3.239133 -3.146387 10.831362 0.068052 -2.666142 7.790592 -0.441883 -2.004601 6.464919 -4.315325 -5.160226 14.898944 3.344346 -5.289037 -18.472836 -22.831137 -6.664237 -6.995344 -53.339500 -16.099321 -3.346295 -31.606388 -46.503654 7.625729 0.327833 -0.218572 0.795719 -0.304830 0.378268 0.170042 18.901545 13.133191 -8.883245 51.624283 15.097320 -3.595460 9.410044 10.908044 -0.404377 -0.352693 0.169015 -0.026174 0.184938 -0.205841 -0.226138 +22.153725 155.534195 0.445792 4.496091 22.709753 -6.216164 -4.626124 -7.051406 -8.234066 -10.608727 3.632791 50.479397 -0.592794 0.066681 -0.199819 0.755584 0.478782 0.607219 -6.835126 2.310300 -30.303844 4.845688 -0.384654 7.111731 -0.445872 0.146122 0.056126 0.238134 -0.189865 0.193352 2.958538 -2.705926 10.555647 -0.013030 -2.428483 8.196683 -0.412132 -1.842441 7.171907 -4.772450 -5.995138 15.109875 4.325140 -6.467134 -19.196730 -22.196098 -9.665896 -6.501179 -54.681339 -18.796181 -1.929911 -35.664619 -49.075684 10.145767 0.329286 -0.227890 0.792700 -0.306229 0.378902 0.186276 18.804504 17.298859 -8.714624 51.821636 17.645992 -2.570530 10.939686 13.409426 -0.257283 -0.364106 0.174324 -0.024961 0.216003 -0.206128 -0.207712 +21.437477 156.033264 -0.661024 4.388953 25.229528 -6.303065 -4.968287 -6.776238 -8.790914 -8.046519 2.649043 50.264370 -0.620825 0.089464 -0.200700 0.761881 0.493157 0.587970 -9.254323 2.494391 -30.850775 6.880153 -0.524728 10.084287 -0.442769 0.144983 0.056740 0.264186 -0.159252 0.181764 2.615285 -2.370515 10.146715 0.022019 -2.400139 8.804703 -0.219228 -1.864779 8.246807 -5.459122 -6.702700 15.540776 5.175652 -7.626729 -19.747723 -21.068577 -12.517859 -5.891361 -55.731277 -21.532248 -0.432078 -40.251881 -53.597481 13.876031 0.321620 -0.250991 0.794432 -0.302493 0.367082 0.197824 18.277132 21.315578 -8.726027 51.008251 20.431128 -1.553502 12.897674 16.670612 0.064321 -0.383831 0.186821 -0.042208 0.259246 -0.193301 -0.195523 +20.721432 156.807175 -1.581186 3.795110 27.435413 -7.085177 -4.961713 -6.300267 -8.407109 -5.199611 1.480661 49.303040 -0.648547 0.088877 -0.212747 0.788091 0.538566 0.576575 -11.169778 2.999451 -30.760841 9.694053 -0.864509 13.432578 -0.454299 0.155687 0.055076 0.301472 -0.144436 0.170218 3.110669 -2.302642 9.941418 -0.014270 -2.320063 9.602319 -0.633501 -1.807837 9.560841 -5.843490 -7.381454 16.392851 6.797629 -8.557486 -21.156933 -20.214958 -15.906149 -5.384365 -55.917622 -24.649147 1.190591 -43.778782 -58.914532 18.013430 0.332103 -0.269568 0.808841 -0.314670 0.374599 0.212889 16.941525 25.085981 -8.888502 50.174759 23.270790 -0.771669 14.531515 21.109221 0.447366 -0.402182 0.203533 -0.049644 0.300854 -0.191208 -0.181571 +20.031929 157.662140 -2.400096 2.777732 29.538780 -7.823514 -4.448115 -5.747032 -8.073668 -2.505160 0.433191 47.928043 -0.641914 0.066350 -0.202172 0.841373 0.616117 0.589978 -13.172125 3.668555 -30.902479 13.909971 -1.518764 16.762117 -0.471343 0.164712 0.058421 0.349494 -0.137658 0.156724 3.932424 -2.384698 9.243716 0.012733 -2.247405 10.462512 -1.067577 -1.825832 11.188011 -6.011738 -8.375024 16.675428 8.037700 -9.531872 -22.222546 -18.911068 -18.861050 -5.272528 -56.358997 -28.444658 3.424997 -44.977745 -63.592274 21.113293 0.357964 -0.261906 0.793259 -0.327232 0.385135 0.247121 14.562156 28.035074 -9.719762 49.200481 26.549614 0.265991 15.455927 25.518578 0.823556 -0.404551 0.186554 -0.036497 0.333780 -0.225720 -0.156246 +19.422081 158.708893 -3.271727 1.710253 31.497774 -8.516628 -3.840318 -5.346277 -8.012822 -0.299954 -0.397873 46.392822 -0.672334 0.075173 -0.212277 0.864550 0.650575 0.582955 -15.094209 4.347300 -31.262259 18.669193 -2.664842 20.526146 -0.469444 0.159128 0.057306 0.387004 -0.122239 0.144876 4.911663 -2.389993 8.773745 0.135144 -2.136640 11.232418 -1.453451 -1.708559 12.642705 -5.961019 -9.412144 16.473419 9.266899 -10.405655 -23.407852 -17.493361 -21.887951 -5.568738 -56.963165 -32.855019 6.266396 -41.238132 -67.341003 20.685965 0.358680 -0.265110 0.793117 -0.327811 0.374620 0.256940 12.068085 29.912214 -10.582129 47.820347 29.429298 0.875161 16.201103 31.620316 1.321605 -0.426427 0.183564 -0.047305 0.362284 -0.223986 -0.149524 +18.758335 159.839401 -3.967716 0.733870 33.511097 -9.153356 -3.084331 -4.985604 -7.702051 1.610186 -1.105956 44.294090 -0.701760 0.107750 -0.213779 0.861877 0.654081 0.553341 -16.591969 4.855028 -31.064398 23.107437 -4.054433 23.645189 -0.459530 0.139094 0.059155 0.408347 -0.082537 0.142226 5.501267 -2.342492 8.116296 0.326053 -2.138457 11.951130 -1.592406 -1.691216 14.084813 -5.680015 -10.315038 16.221285 10.206091 -11.183959 -23.858860 -15.543792 -24.753969 -6.028838 -57.068516 -37.336067 9.196218 -32.151024 -70.046745 15.756139 0.335588 -0.270035 0.785632 -0.309219 0.350668 0.267028 9.700342 31.387445 -11.328193 45.932888 32.372513 1.471487 15.805153 37.733971 1.637959 -0.453894 0.182822 -0.065254 0.392543 -0.203495 -0.139394 +18.105206 161.019791 -4.658534 -0.169937 35.400925 -9.663845 -2.538609 -4.759207 -7.453774 3.514984 -1.833609 41.955551 -0.707142 0.135180 -0.201232 0.870556 0.666802 0.529003 -17.669367 5.209222 -30.869720 26.962191 -5.698649 26.863974 -0.447113 0.107116 0.069708 0.428832 -0.041499 0.149003 6.245407 -2.487264 7.390812 0.411670 -2.204336 12.628109 -1.923052 -1.790040 15.518140 -5.473561 -10.979053 15.464891 10.703759 -11.930090 -23.739332 -13.374066 -27.076847 -6.589390 -55.996731 -41.723072 11.788804 -19.079777 -72.476227 7.411460 0.314177 -0.249905 0.755919 -0.281562 0.322699 0.290543 7.427842 32.449253 -12.272974 44.017368 35.669479 2.383014 13.749253 42.179935 1.301836 -0.475039 0.156267 -0.066811 0.406735 -0.200478 -0.120483 +17.422455 162.117386 -5.215325 -0.429994 37.429478 -9.535018 -2.518772 -4.729338 -7.216983 4.934760 -2.388943 39.231010 -0.708301 0.151048 -0.192370 0.875117 0.686744 0.502157 -18.544069 5.097215 -30.500792 29.617065 -7.388950 30.038145 -0.436299 0.077574 0.071532 0.452704 -0.007588 0.150338 6.289950 -2.462613 6.344170 0.370640 -2.269462 13.183566 -2.007634 -1.936915 16.980207 -4.944070 -11.884566 14.463154 11.157345 -12.697670 -23.735731 -10.034667 -28.902767 -7.422763 -54.564869 -45.669411 13.694847 -1.036588 -72.294579 -5.575310 0.296647 -0.228568 0.720374 -0.258666 0.298935 0.308522 4.418246 33.405659 -12.823284 42.196316 38.273712 2.832731 9.709265 47.540882 -0.230787 -0.487892 0.129683 -0.065812 0.419651 -0.197592 -0.098218 +16.753540 163.191544 -5.734206 -0.766524 38.922153 -9.221552 -2.264905 -4.517166 -6.918632 5.999410 -2.678671 36.169243 -0.690242 0.170276 -0.167414 0.852778 0.689416 0.432916 -18.749798 5.160038 -30.086773 31.478643 -8.934193 32.906456 -0.400055 0.030926 0.086133 0.467867 0.056473 0.140165 6.812069 -2.283485 4.961699 0.378932 -2.029304 13.650519 -2.150700 -1.810958 18.474911 -4.829890 -12.518760 13.218391 11.477771 -13.902327 -22.622032 -6.377359 -30.391581 -8.104938 -53.222935 -49.543530 15.323508 18.399584 -69.751839 -19.170794 0.265840 -0.195103 0.646876 -0.215288 0.242330 0.333733 1.596743 33.932720 -13.299437 39.514057 40.713444 3.202540 4.352972 51.515404 -2.666320 -0.497040 0.091027 -0.065668 0.435778 -0.182720 -0.056700 +16.221933 164.221085 -6.192954 -0.817226 40.484974 -8.702502 -2.302989 -4.279409 -6.310658 6.788893 -2.818560 32.679237 -0.687663 0.198758 -0.143415 0.851882 0.703400 0.390262 -19.082367 5.061860 -29.382994 33.000816 -10.373069 35.331257 -0.371540 -0.014722 0.101521 0.494755 0.114010 0.134616 6.924529 -2.022293 3.569913 0.515867 -1.854895 14.060697 -1.921576 -1.729836 19.964748 -4.591812 -13.348774 11.752779 11.447014 -15.099760 -21.954708 -2.613687 -31.019751 -9.261097 -52.360462 -53.560795 17.272785 29.927357 -64.910141 -25.544796 0.237261 -0.169460 0.586437 -0.174395 0.192802 0.362726 -1.420432 33.781910 -13.922628 36.037041 43.099483 3.385478 -2.334826 54.551388 -6.039674 -0.515655 0.050238 -0.069348 0.457937 -0.178672 -0.024820 +15.655078 165.160690 -6.656846 -0.932292 41.850872 -8.284892 -2.005469 -4.007881 -5.551103 6.978714 -2.733078 29.034914 -0.707976 0.237623 -0.125828 0.866429 0.720326 0.379021 -18.890686 4.939996 -28.491638 33.571877 -11.709288 38.031689 -0.355075 -0.052512 0.105369 0.531491 0.158752 0.130410 7.370888 -1.884177 2.460661 0.499105 -1.656441 14.480565 -2.089760 -1.582556 21.360121 -3.895012 -14.453313 9.984084 11.453084 -16.089018 -21.944504 0.618517 -31.101831 -10.762492 -50.359234 -58.023094 19.186573 35.760273 -59.815830 -26.961369 0.213829 -0.157674 0.551682 -0.144413 0.155493 0.386023 -4.421941 33.097923 -14.526329 32.930218 45.515430 3.559974 -10.676677 57.759983 -10.877616 -0.539267 0.014678 -0.085215 0.486389 -0.180870 -0.009863 +15.172079 165.921936 -7.120212 -1.228807 42.945683 -7.674042 -1.384421 -3.596232 -5.008263 6.997127 -2.488699 25.135151 -0.744766 0.303388 -0.099993 0.816954 0.676069 0.304685 -18.586819 4.938560 -27.659491 34.164070 -12.909202 40.184898 -0.304439 -0.099671 0.124308 0.547151 0.247971 0.099840 8.399351 -1.856482 1.354432 0.279511 -1.409547 14.653395 -2.761358 -1.334362 22.294418 -3.288990 -14.837470 8.181435 11.494079 -16.975590 -20.952135 3.693878 -31.148304 -11.745128 -47.346420 -61.643314 20.054596 40.707436 -55.649750 -27.901323 0.159934 -0.177911 0.510017 -0.090085 0.076169 0.401396 -6.610831 32.223427 -14.741937 30.305374 47.920795 3.772357 -20.391186 58.728012 -16.582783 -0.575876 0.004675 -0.141257 0.542778 -0.139841 0.005509 +14.746009 166.565430 -7.560210 -1.498593 43.988770 -6.815135 -0.711396 -3.187897 -4.504516 6.695819 -2.180803 20.696096 -0.768782 0.349091 -0.092746 0.817768 0.699488 0.266654 -17.801920 4.570080 -26.598909 33.292236 -13.723327 42.428619 -0.268520 -0.154498 0.127791 0.593068 0.310591 0.092052 9.363267 -2.038183 -0.176428 -0.023613 -1.320607 14.700050 -3.336374 -1.228303 23.442545 -2.681811 -15.313403 6.131666 10.967842 -17.828402 -20.459042 6.901023 -30.088480 -13.177217 -45.270607 -64.958664 20.804037 42.543510 -49.781395 -26.288889 0.109323 -0.160439 0.441874 -0.039261 0.016395 0.413454 -9.692622 30.772814 -15.409515 28.486740 50.483730 4.426569 -29.514660 57.910091 -21.757524 -0.606906 -0.033656 -0.152327 0.576409 -0.119679 0.031851 +14.331110 167.137146 -7.833845 -1.018964 44.913437 -5.734782 -0.656269 -2.683207 -3.549790 6.586194 -1.896998 16.325548 -0.788344 0.404743 -0.069504 0.807718 0.690519 0.211853 -17.089457 4.368497 -24.683519 31.823704 -13.856279 44.013763 -0.244250 -0.203064 0.137892 0.617792 0.387344 0.089147 8.927692 -1.869438 -1.513067 -0.241486 -1.261811 14.758851 -3.354580 -1.167326 24.305511 -2.080103 -15.138094 5.291570 11.544012 -18.311682 -19.590296 10.742352 -29.177095 -14.289844 -43.815407 -67.432449 21.324484 43.927773 -44.544197 -24.902868 0.074827 -0.142320 0.407322 0.002023 -0.037589 0.447332 -11.811888 29.618423 -15.626767 26.345934 52.538223 4.644286 -35.202942 55.660599 -24.161993 -0.636790 -0.065185 -0.180114 0.611419 -0.100336 0.056201 +13.885376 167.529358 -8.048647 -0.482630 45.431965 -4.537291 -0.339754 -2.180312 -2.827226 5.794690 -1.531284 12.804880 -0.764533 0.415231 -0.048522 0.802000 0.703182 0.173800 -15.933917 4.276096 -22.689014 29.678133 -13.277908 44.719940 -0.221824 -0.236136 0.146749 0.630602 0.429216 0.089359 8.744745 -1.738192 -2.640304 -0.559519 -1.083892 14.675805 -3.702135 -0.980965 24.784090 -1.789838 -15.569306 4.680195 11.493908 -19.090755 -18.789513 13.560601 -28.396606 -15.121990 -41.001778 -69.709290 20.738363 43.747368 -39.183022 -22.528307 0.054596 -0.112516 0.347903 0.032581 -0.071916 0.467023 -13.853784 29.051785 -15.733978 24.564468 54.460114 4.761767 -39.383476 52.361546 -25.161339 -0.636036 -0.098886 -0.168575 0.617409 -0.098787 0.090564 +13.448483 167.663147 -8.263962 0.195717 45.231274 -3.128685 -0.011186 -1.658668 -2.221748 4.826827 -1.168970 9.436467 -0.749783 0.439417 -0.015549 0.787245 0.703784 0.113216 -14.568318 4.369922 -20.656429 26.746553 -11.856483 44.400692 -0.191816 -0.279148 0.165609 0.645942 0.497640 0.078831 8.297199 -1.259358 -3.759178 -0.798297 -0.624896 14.550812 -3.848387 -0.549422 25.172953 -1.183136 -15.715086 3.919689 11.901684 -19.744865 -17.656733 16.391243 -27.028820 -16.111454 -38.907597 -72.513435 21.067381 42.426201 -33.731606 -19.780941 0.029960 -0.082909 0.288493 0.072443 -0.126040 0.501692 -14.964015 27.849743 -15.640100 22.269495 56.370136 4.798512 -42.100193 49.376343 -25.172220 -0.647315 -0.137282 -0.177014 0.639869 -0.091549 0.127237 +13.007328 167.637421 -8.454124 0.767569 44.928761 -1.782283 0.509134 -1.221781 -1.911390 3.412644 -0.829386 6.636091 -0.758993 0.492438 -0.001979 0.754094 0.659401 0.071364 -12.815981 4.407954 -18.125818 23.272379 -9.826630 42.483952 -0.159064 -0.321423 0.170573 0.637418 0.551604 0.087760 7.943984 -0.852346 -4.734510 -1.020349 -0.285872 14.316947 -4.005085 -0.130775 25.251595 -0.868558 -15.892940 3.365562 11.685101 -20.308231 -16.669403 18.799007 -25.586620 -16.688164 -34.908241 -74.762756 19.751120 41.601349 -29.191996 -17.742386 -0.014654 -0.070588 0.256102 0.113673 -0.175328 0.502797 -16.054989 26.912159 -15.420857 19.690828 58.074780 4.447591 -44.031979 46.105930 -24.506008 -0.663059 -0.155037 -0.193317 0.644462 -0.060307 0.138163 +12.420537 167.398560 -8.625968 1.967225 43.764427 0.202303 0.504705 -0.859863 -1.929529 1.945452 -0.545212 4.169034 -0.762333 0.543554 0.022784 0.690453 0.590349 0.009558 -11.169040 4.519945 -15.637813 18.981491 -7.193574 39.306675 -0.118138 -0.358126 0.178990 0.616272 0.617879 0.078567 6.847950 -0.120638 -5.636936 -1.336518 0.329786 13.978885 -4.052551 0.560723 25.026461 -0.386074 -15.576569 2.864381 11.446191 -20.448399 -15.114246 20.869890 -24.428535 -17.067520 -29.271109 -76.415794 16.808975 39.941898 -25.100555 -15.637975 -0.064683 -0.073615 0.219950 0.159141 -0.234351 0.501691 -16.502871 26.487867 -15.007523 16.682652 59.630512 3.696869 -44.426018 42.656334 -22.918911 -0.672870 -0.161228 -0.226947 0.661385 -0.019779 0.148838 +11.780876 167.072342 -8.880464 3.448924 42.885639 2.210522 0.141660 -0.648863 -2.357196 0.520956 -0.344025 2.251959 -0.768953 0.594289 0.045223 0.632013 0.526932 -0.037802 -10.092422 4.117255 -12.452794 14.830821 -4.812202 34.507946 -0.077818 -0.391207 0.184329 0.599858 0.675685 0.068405 5.933909 0.405359 -6.374796 -1.785075 0.850545 13.808910 -4.429502 1.257895 24.924658 -0.013854 -15.575856 1.977893 10.785868 -20.744312 -13.798529 21.957529 -23.667435 -17.448750 -20.105944 -77.514778 10.777072 37.615070 -22.265532 -13.733365 -0.115279 -0.084654 0.182735 0.202864 -0.288960 0.494822 -16.886011 26.492393 -14.660309 12.204076 60.558693 1.668747 -44.748600 39.188293 -21.343992 -0.681110 -0.165429 -0.259252 0.680324 0.016723 0.156164 +11.227678 166.680374 -9.086118 4.620787 41.402538 3.698118 -0.286626 -0.442885 -2.379221 -0.296352 -0.241916 0.429926 -0.769058 0.634095 0.057668 0.622495 0.518155 -0.069037 -9.352085 3.693133 -9.311338 11.043532 -2.895259 29.523508 -0.051834 -0.439227 0.185082 0.610616 0.721879 0.081057 4.758600 0.927456 -7.249749 -2.077712 1.348227 13.840073 -4.450324 1.909000 25.318718 0.310471 -15.499961 0.829487 10.410777 -21.069214 -13.001333 23.017033 -22.512407 -17.712187 -14.018231 -77.859108 6.454906 37.030121 -20.466269 -12.947874 -0.153964 -0.050286 0.134281 0.242683 -0.333068 0.503079 -17.590157 26.656893 -14.675323 8.037049 61.179928 -0.561792 -45.052948 35.573811 -19.879066 -0.694358 -0.203448 -0.259499 0.678581 0.032797 0.174567 +10.621062 166.444778 -9.312825 5.261193 39.040073 4.449441 -0.352671 -0.188311 -2.051232 -1.078750 -0.167498 -1.218452 -0.777754 0.663959 0.070799 0.616743 0.514688 -0.113247 -8.420516 3.445328 -6.752825 7.082187 -1.279330 25.117249 -0.038604 -0.478872 0.192347 0.624364 0.767513 0.085820 4.282636 1.596659 -7.755801 -2.379991 2.097527 14.099246 -4.830224 2.851779 25.788324 0.202419 -14.896953 0.053566 10.577357 -21.147591 -12.533170 23.910519 -21.962946 -18.070442 -7.380886 -77.556740 1.343654 36.276272 -18.760559 -12.161076 -0.172370 -0.022229 0.111240 0.268745 -0.367205 0.528178 -17.678221 26.862728 -14.862659 3.101145 61.723366 -3.145608 -43.651379 33.226028 -18.178875 -0.714337 -0.232760 -0.270911 0.688809 0.045430 0.192257 +9.950531 166.382294 -9.580123 5.455435 37.154781 4.644238 -0.402416 -0.025748 -1.772301 -1.016685 -0.138610 -2.438679 -0.757992 0.662718 0.089419 0.595243 0.508698 -0.146290 -7.426170 3.136102 -4.473663 3.952729 -0.209896 20.902784 -0.025871 -0.481140 0.199171 0.621075 0.794388 0.073606 4.312849 2.315561 -7.894930 -2.497273 2.906760 14.517030 -5.136310 3.777774 26.250202 -0.159372 -14.889859 -0.343930 10.712523 -21.506483 -12.412816 24.332123 -21.721045 -18.506142 -0.129292 -77.292854 -4.122736 34.700958 -17.894260 -11.333456 -0.178325 -0.025789 0.084454 0.278048 -0.382818 0.537295 -16.980810 27.381304 -14.754991 -2.094314 61.330296 -6.117772 -42.635696 31.602150 -16.905416 -0.704379 -0.231069 -0.273044 0.706330 0.051655 0.214697 +9.280651 166.360245 -9.857265 5.211547 35.087025 4.684586 -0.184278 -0.044609 -2.079165 -0.858331 -0.142753 -2.841350 -0.777921 0.670625 0.084950 0.605498 0.523687 -0.148342 -6.566237 2.882733 -3.341674 1.942742 0.332822 17.679333 -0.027756 -0.485999 0.198132 0.639198 0.803720 0.068719 5.011559 2.857304 -7.863353 -2.785936 3.625932 14.726908 -5.907342 4.651711 26.532146 -0.373554 -14.466948 -0.621476 10.872719 -21.329311 -12.795491 24.202517 -21.236774 -18.827250 2.790069 -76.905296 -6.039688 33.688625 -18.252241 -11.020083 -0.180736 -0.031376 0.089304 0.279787 -0.387206 0.542364 -16.987125 27.242277 -15.192152 -3.880207 61.844578 -7.118716 -41.363770 30.655727 -16.077665 -0.717463 -0.231448 -0.282872 0.723002 0.054444 0.214632 +8.693721 166.342102 -10.037588 4.831928 33.538353 4.941697 0.158729 -0.239598 -3.075771 -0.683784 -0.171888 -2.380670 -0.813354 0.730170 0.081609 0.608570 0.528031 -0.181476 -6.025341 2.779716 -3.324180 1.261428 0.492542 15.758355 -0.013733 -0.534744 0.191867 0.670189 0.856857 0.086009 6.017321 3.364200 -7.929292 -3.029213 4.315345 14.687223 -6.735345 5.502752 26.782696 -0.327290 -14.347259 -1.368294 10.789804 -21.599205 -12.693804 23.901497 -19.977432 -19.416935 2.272611 -78.419380 -5.367332 32.757080 -18.064423 -10.824881 -0.224632 -0.010287 0.064272 0.316471 -0.423982 0.555081 -17.001711 26.078747 -15.855872 -3.526985 63.092155 -6.654686 -40.548397 30.509621 -15.823312 -0.753414 -0.257017 -0.296162 0.743583 0.082580 0.228449 +8.147728 166.256927 -10.123615 4.090908 32.946072 5.377330 0.823818 -0.483727 -4.586555 -0.229213 -0.221832 -1.648501 -0.863706 0.782214 0.053037 0.620970 0.541519 -0.194590 -5.338080 2.811177 -4.091404 1.497100 0.430727 14.954982 0.000841 -0.583773 0.183775 0.703402 0.884149 0.111408 7.154171 3.659247 -8.068837 -3.092623 4.718558 14.222916 -7.268971 6.067945 26.617887 -0.193863 -14.446340 -1.762977 10.273693 -21.747290 -12.772013 23.019650 -18.810026 -19.752174 -4.497456 -81.214943 0.289883 32.559399 -17.086882 -10.854053 -0.272812 0.006697 0.048296 0.352954 -0.450772 0.547974 -17.606268 24.344473 -16.548855 0.018092 64.941002 -4.002574 -40.092724 30.982365 -16.004272 -0.797053 -0.277354 -0.300430 0.745589 0.112109 0.227132 +7.563061 166.260620 -10.074532 3.460313 32.976471 5.710641 1.651751 -0.598342 -5.862648 -0.220353 -0.229545 -1.193220 -0.924313 0.852111 0.031840 0.608909 0.507222 -0.193184 -4.589757 2.812429 -4.654297 1.586486 0.375017 14.338484 0.012426 -0.597335 0.169291 0.712591 0.912611 0.123434 7.424440 3.845426 -8.311149 -3.011508 4.804329 13.762800 -7.142565 6.292909 26.404932 -0.122025 -14.670962 -1.414737 10.276059 -21.916969 -13.140939 22.433922 -17.528334 -19.910950 -27.151760 -83.391960 20.414181 32.921360 -16.879583 -11.344308 -0.315939 -0.025322 0.070809 0.371862 -0.467816 0.528272 -18.030359 22.724833 -16.860800 6.800633 66.340378 0.729718 -40.609013 33.137920 -17.157066 -0.828607 -0.254875 -0.334881 0.771931 0.151767 0.209647 +6.774364 166.301926 -10.015993 2.750137 32.451008 5.964579 2.709828 -0.654018 -7.029812 -0.114215 -0.240247 -0.610304 -0.930584 0.864305 0.032429 0.609857 0.508663 -0.197719 -3.674926 2.945854 -5.614472 1.624561 0.393651 14.123142 0.018196 -0.609623 0.169756 0.719909 0.924489 0.125479 6.925022 4.113745 -8.470967 -2.708726 4.964619 13.365863 -6.311509 6.434574 26.121767 -0.087647 -14.617156 -1.313665 10.179727 -21.897840 -12.920235 21.621241 -16.789473 -19.702494 -55.289963 -83.062332 45.417103 33.694054 -18.238564 -12.221183 -0.328209 -0.018812 0.060631 0.383174 -0.479172 0.530283 -17.603447 22.193762 -16.885450 12.234296 67.057144 4.719404 -40.514904 35.660309 -18.112703 -0.837186 -0.264026 -0.337863 0.774821 0.155843 0.211070 +6.045072 166.323853 -9.917975 1.937882 32.343819 5.958369 3.803444 -0.623412 -7.813339 0.243347 -0.258939 -0.337957 -0.931584 0.849311 0.020650 0.625676 0.531819 -0.167987 -2.776719 2.871157 -5.914401 1.981815 0.313143 13.251905 0.004562 -0.600031 0.164373 0.727190 0.900327 0.131984 6.693370 4.130381 -8.602763 -2.492925 4.878021 13.085575 -5.623110 6.248312 25.914974 0.026765 -14.322717 -0.993933 9.866907 -21.264786 -13.101703 20.605280 -16.762232 -19.441797 -69.444542 -81.344215 56.811363 33.558720 -20.169079 -12.845671 -0.327240 -0.026446 0.068682 0.378528 -0.455873 0.520965 -16.992315 22.335329 -16.871490 19.327330 67.236977 9.520151 -39.864265 38.640488 -19.115461 -0.836243 -0.259119 -0.327297 0.766715 0.143850 0.201078 +5.289488 166.324463 -9.806248 1.322211 31.782982 6.073307 4.770546 -0.606652 -8.541510 0.440738 -0.270776 0.067088 -0.946148 0.846498 0.018886 0.636753 0.539766 -0.140044 -2.060540 2.844466 -6.400616 2.237840 0.249050 12.528689 -0.009189 -0.584895 0.170410 0.730516 0.888239 0.129532 6.422508 4.134879 -8.697432 -2.410754 4.796368 12.828496 -5.160326 6.120498 25.663195 -0.058329 -14.074247 -0.515942 9.547147 -20.743080 -13.313732 19.289627 -16.371893 -19.119247 -77.490204 -78.407585 61.343708 32.973049 -23.363062 -13.643740 -0.326028 -0.056824 0.093424 0.374472 -0.437565 0.520119 -16.234922 22.454899 -16.763935 28.269604 66.825409 15.260168 -39.315926 42.380127 -20.557898 -0.846430 -0.241830 -0.335911 0.779489 0.134141 0.184590 +4.603719 166.270309 -9.628306 0.787367 30.777323 6.156832 5.514717 -0.599568 -8.969502 0.851362 -0.302157 0.421786 -0.949322 0.835268 0.015171 0.670398 0.577169 -0.101702 -1.576798 2.885718 -6.904355 2.616249 0.196066 12.201994 -0.030733 -0.580131 0.166903 0.748952 0.868787 0.138336 6.046391 4.173681 -8.953986 -2.359094 4.779506 12.608792 -4.672663 6.045753 25.626432 -0.169140 -13.511759 -0.112721 9.216455 -20.021311 -13.482525 17.449570 -15.208226 -18.445559 -84.397644 -74.431297 63.724461 32.583523 -28.703791 -15.143194 -0.319589 -0.056320 0.103005 0.369467 -0.413696 0.525590 -15.929209 22.354614 -17.222151 39.593220 66.615494 22.832735 -36.562370 45.757362 -20.921675 -0.851164 -0.249906 -0.326012 0.776898 0.110530 0.175946 +3.998624 166.124008 -9.425032 0.268377 29.780293 6.220406 6.298190 -0.564981 -9.349019 0.998647 -0.311890 0.877572 -0.933065 0.800760 0.008394 0.679123 0.579550 -0.065802 -1.058189 2.943848 -7.337451 3.144549 0.100472 12.102241 -0.051450 -0.548698 0.166443 0.728923 0.824585 0.143160 5.764920 4.117283 -9.040600 -2.385677 4.656163 12.352559 -4.369051 5.882736 25.184273 -0.646732 -13.006015 0.784969 9.144421 -19.396803 -13.731958 15.495880 -14.966761 -17.312281 -85.709503 -69.846359 59.936234 31.575283 -34.764702 -16.622219 -0.293988 -0.068191 0.133468 0.344056 -0.375884 0.513981 -14.899734 23.063726 -17.113855 49.787735 64.896858 28.465288 -33.056538 49.319580 -20.803890 -0.833715 -0.231214 -0.311077 0.754286 0.091641 0.159334 +3.397810 165.981445 -9.153444 -0.302558 29.064325 6.142828 7.322985 -0.437458 -9.538744 0.848280 -0.305337 1.118544 -0.866625 0.702229 0.007516 0.707805 0.610742 -0.013836 -0.160860 3.001503 -7.586288 3.062507 0.123911 11.990170 -0.100697 -0.482750 0.163399 0.695277 0.734926 0.146518 5.599644 4.083576 -8.875501 -2.442043 4.600804 12.146664 -4.164323 5.635550 24.392145 -1.014126 -12.510187 2.059135 9.851705 -18.615873 -14.412713 13.283307 -15.468011 -16.367182 -83.872742 -65.445190 53.785103 26.602276 -40.988811 -16.044506 -0.213428 -0.055911 0.174528 0.277061 -0.297394 0.513203 -12.405194 24.297611 -16.526840 57.423985 61.840282 31.015785 -26.612154 53.179672 -18.892153 -0.779497 -0.214809 -0.261756 0.703918 0.038142 0.151123 +2.881973 165.802383 -8.892565 -0.746657 28.167524 6.127325 8.064070 -0.379529 -9.955431 0.907637 -0.290271 1.757425 -0.863072 0.682274 -0.021868 0.666808 0.526805 0.029060 0.478978 3.230084 -8.036625 3.128987 0.096436 12.437164 -0.114635 -0.420108 0.138320 0.623208 0.658848 0.151542 5.547206 4.232161 -8.374828 -2.461287 4.608712 11.943456 -4.066922 5.601864 23.144876 -1.775282 -12.153822 3.146666 9.957205 -18.016468 -14.850808 11.300803 -17.004930 -15.459740 -80.482262 -60.903999 46.393951 19.054178 -46.859386 -13.795204 -0.182508 -0.096380 0.253326 0.224151 -0.248860 0.452766 -9.225326 26.157406 -15.612331 60.147099 57.151772 28.553387 -15.392452 56.765541 -13.648410 -0.738761 -0.149773 -0.266975 0.657665 0.053602 0.102323 +2.425914 165.646896 -8.576248 -1.114040 27.719856 6.093285 8.523989 -0.430282 -10.678864 1.398656 -0.310160 3.087777 -0.846434 0.638121 -0.033779 0.648257 0.451581 0.105528 1.106315 3.339919 -8.165560 3.134204 0.068032 12.561898 -0.143586 -0.330029 0.129613 0.543585 0.565688 0.144133 5.384788 4.208803 -7.622181 -2.479476 4.468927 11.626424 -3.963840 5.386047 21.362310 -2.538534 -11.799301 4.994083 10.342610 -17.223997 -15.281015 9.602264 -18.411757 -14.489587 -77.448097 -55.665230 39.080826 6.912807 -52.168674 -8.421310 -0.118701 -0.149964 0.355887 0.150352 -0.183869 0.407708 -6.191836 27.530190 -14.616426 62.100391 51.022358 24.285908 1.487765 58.231964 -4.515537 -0.689516 -0.079265 -0.272603 0.616457 0.037388 0.043850 +1.892877 165.527222 -8.307420 -1.320157 27.438904 6.024343 8.804043 -0.520952 -11.724448 2.009363 -0.351595 5.107023 -0.821493 0.577180 -0.043184 0.633540 0.417549 0.156606 1.545581 3.443554 -8.345448 3.594228 -0.016706 12.732988 -0.175229 -0.243758 0.126685 0.486679 0.488302 0.130215 5.240254 3.885373 -6.604835 -2.608207 4.173019 11.420531 -4.110647 5.116705 19.652153 -3.248586 -11.309921 6.543055 10.628420 -16.363821 -15.987360 6.680974 -19.585842 -13.844151 -74.320900 -50.182953 31.355860 -7.711515 -52.438782 -0.885073 -0.059364 -0.209896 0.435250 0.084899 -0.115409 0.376087 -3.225844 29.060011 -13.800301 62.489117 45.105511 18.976837 16.208967 54.689651 3.029758 -0.642904 -0.006721 -0.268939 0.597875 0.019412 0.010474 +1.503293 165.241867 -8.062940 -1.872544 27.256689 5.607562 9.173531 -0.578054 -12.846951 2.860530 -0.454417 7.441465 -0.788694 0.480980 -0.074902 0.689558 0.468411 0.255373 2.273404 3.650125 -8.432840 3.960526 -0.066124 13.463724 -0.241096 -0.160799 0.110128 0.466335 0.363913 0.143251 5.612366 3.288752 -5.623464 -2.656493 3.701338 11.200472 -4.344469 4.696045 18.251329 -3.845389 -10.786163 8.410403 10.468436 -15.161457 -17.444098 3.094943 -19.395794 -13.516047 -73.244728 -45.120861 25.429760 -18.212690 -46.996372 3.674936 0.025590 -0.224607 0.512006 0.000911 -0.008011 0.353825 -1.161697 29.294413 -13.281642 64.009697 39.762363 14.683785 22.268076 46.992287 4.549775 -0.596414 0.031837 -0.218076 0.548583 -0.035363 -0.020596 +1.163953 164.898224 -7.719171 -2.245581 27.119728 5.125892 9.064021 -0.807862 -14.144335 4.062254 -0.661653 10.636581 -0.745959 0.377733 -0.093884 0.720589 0.512561 0.308761 2.603768 3.693428 -8.156476 4.766854 -0.200310 13.924015 -0.292988 -0.075202 0.109002 0.443478 0.266891 0.134219 6.102139 2.769947 -4.489749 -2.817702 3.419485 10.893922 -4.828446 4.471055 16.777538 -4.311166 -10.366948 10.302101 10.827532 -14.326761 -18.647331 -1.315633 -19.761639 -12.828084 -70.823479 -40.584328 19.598974 -21.849625 -39.580322 4.089746 0.109032 -0.251681 0.572904 -0.076450 0.082209 0.343583 1.364328 30.279877 -12.183983 64.271088 34.851540 10.480817 21.889658 37.390999 2.871182 -0.549648 0.082061 -0.177757 0.524112 -0.079039 -0.033122 +0.643611 164.648163 -7.454764 -2.396243 26.319700 4.583327 8.914662 -1.189471 -15.442275 4.765430 -0.898953 14.346115 -0.723408 0.294975 -0.135524 0.743085 0.528034 0.373324 2.980075 3.828263 -8.064270 5.169292 -0.293313 14.740459 -0.342242 0.005466 0.091262 0.408499 0.155941 0.140283 5.703667 2.319776 -2.885660 -2.926263 3.118362 10.440119 -4.921028 4.242048 15.125410 -4.530672 -9.600414 12.492696 11.073767 -13.146041 -19.750673 -6.323945 -20.328955 -11.684490 -67.008247 -35.957207 13.765593 -21.655010 -32.839359 2.890163 0.180359 -0.271922 0.651909 -0.155295 0.171850 0.307683 5.002633 31.745455 -10.233080 63.596897 30.567308 6.877375 19.962444 29.748713 1.476035 -0.507224 0.136706 -0.141464 0.476642 -0.103063 -0.066566 +0.034367 164.298172 -7.302047 -2.904719 24.550039 4.002471 9.285649 -1.613476 -17.397533 4.939266 -1.143864 19.367868 -0.697447 0.217400 -0.168870 0.756723 0.526457 0.423855 3.587287 4.304657 -8.709493 5.652985 -0.400704 16.713232 -0.386285 0.079799 0.077989 0.364376 0.053933 0.145328 5.431520 1.962162 -0.648394 -2.911253 2.992637 9.621492 -4.957923 4.159826 12.917857 -5.287396 -8.375392 14.502936 11.358890 -12.071952 -20.585999 -11.452865 -19.708029 -10.074731 -63.529682 -30.909336 8.358694 -18.492363 -28.223272 1.091566 0.255661 -0.283423 0.731517 -0.233197 0.251245 0.278785 10.075599 31.886204 -7.699796 62.630482 26.192200 3.791089 17.663208 23.004074 0.625034 -0.463677 0.185246 -0.110898 0.425963 -0.124505 -0.097750 +-0.727353 163.896835 -7.223492 -3.008276 22.035337 3.677706 9.522751 -1.967760 -19.711714 4.694295 -1.246534 24.977421 -0.670678 0.151376 -0.195416 0.757548 0.525458 0.467222 3.970089 5.080105 -10.031467 5.631836 -0.377111 19.647587 -0.415510 0.142913 0.068845 0.326898 -0.026727 0.145717 3.924162 2.163312 1.951574 -2.670274 3.175872 8.709508 -4.227693 4.268992 10.655452 -5.574524 -7.478019 15.723668 11.241080 -10.879519 -21.340027 -15.470458 -17.810436 -9.378189 -60.964703 -27.026674 4.770772 -14.935219 -24.731766 -0.247103 0.302369 -0.302749 0.782621 -0.287427 0.313982 0.245332 14.839340 30.607428 -5.876314 60.586037 22.582407 1.804074 15.459748 16.683353 0.302390 -0.425095 0.231847 -0.085000 0.388648 -0.138982 -0.122654 +-1.276703 163.205933 -7.114695 -3.188107 20.125826 3.490277 9.567676 -2.516288 -23.157537 4.592924 -1.440678 32.002728 -0.626222 0.103103 -0.206375 0.751699 0.518213 0.477906 4.004121 5.862217 -11.714152 6.379379 -0.572347 23.018656 -0.430698 0.163487 0.059324 0.290569 -0.077932 0.162258 2.812906 2.184469 4.341192 -2.370742 3.204790 7.776482 -3.547487 4.181605 8.470813 -5.922029 -6.688453 15.734831 10.983440 -10.183174 -21.245098 -17.941589 -14.558348 -9.286791 -59.890591 -23.472286 2.041696 -11.116385 -21.778189 -1.341169 0.333187 -0.271548 0.793085 -0.315946 0.347390 0.228498 17.773335 27.986938 -5.341005 58.811947 19.628033 0.867582 13.436264 9.585812 0.273600 -0.388544 0.233265 -0.048803 0.331934 -0.149897 -0.126763 +-1.740516 162.326385 -6.962516 -3.763556 18.597235 3.088673 9.740908 -3.066433 -27.092962 4.828552 -1.805309 39.742638 -0.596579 0.085221 -0.193604 0.736575 0.486607 0.477354 4.233627 6.701496 -13.441511 7.622811 -0.982310 26.802177 -0.432961 0.173024 0.066673 0.254320 -0.093286 0.166765 2.684459 1.835391 6.730634 -2.192938 3.169391 6.868375 -3.495774 4.099107 6.328510 -6.301057 -5.814495 15.146177 10.791109 -9.730202 -20.768696 -19.510109 -11.365467 -9.245909 -58.665051 -19.894918 -0.162634 -8.531816 -19.381807 -1.890725 0.352819 -0.256297 0.803771 -0.328059 0.353822 0.229448 18.986029 24.900455 -5.439965 57.112122 17.176193 0.052519 11.351021 3.933233 0.299241 -0.367915 0.231857 -0.041567 0.303101 -0.157904 -0.131875 +-2.247162 161.614761 -6.609315 -4.606283 16.783684 2.038433 10.257225 -3.237386 -30.051424 4.860679 -2.070026 46.780174 -0.610522 0.061044 -0.204255 0.718773 0.467486 0.504439 5.313603 7.236397 -13.443831 7.945229 -1.112726 29.058994 -0.441672 0.214755 0.068919 0.236123 -0.130152 0.144288 2.724490 1.566288 9.486620 -2.050978 3.328049 6.083529 -3.622650 4.284473 4.461007 -6.048547 -5.272292 15.347760 10.143270 -8.627272 -21.611727 -21.036156 -8.525801 -9.344939 -56.316929 -16.534935 -1.850828 -6.523263 -16.867512 -2.104004 0.366587 -0.310249 0.846832 -0.352342 0.379628 0.203147 18.836288 21.985016 -5.754991 55.359642 15.102925 -0.912700 8.728246 -0.011556 0.353473 -0.360199 0.279839 -0.061794 0.312966 -0.157242 -0.163019 +-2.860375 161.271774 -6.154327 -5.205863 14.780851 0.184086 10.481403 -3.321495 -31.716125 4.762765 -2.255331 53.005367 -0.608191 0.027894 -0.229788 0.735862 0.478802 0.550138 6.409328 7.461229 -11.889744 8.249804 -1.161624 30.333080 -0.477710 0.252686 0.055904 0.219036 -0.188509 0.163519 2.189550 1.555688 13.131711 -1.949141 3.727525 5.295633 -3.683510 4.680171 2.536283 -5.645040 -5.248861 16.697853 10.199049 -7.850960 -22.905785 -22.588839 -6.642550 -9.222620 -52.489914 -13.294887 -3.059737 -4.999961 -14.308742 -2.081709 0.393287 -0.323604 0.898454 -0.389480 0.437701 0.182589 19.141649 19.729973 -5.567057 51.953823 12.876890 -2.060239 6.453767 -2.555665 0.451266 -0.346359 0.311769 -0.041931 0.287430 -0.169046 -0.185381 +-3.346518 161.154312 -5.731280 -5.288341 12.923439 -2.078186 9.747585 -3.666156 -32.410072 4.921432 -2.548815 58.253490 -0.615517 -0.012988 -0.252891 0.765817 0.502750 0.614105 6.882721 7.336810 -9.424691 8.648570 -1.214429 30.933720 -0.517838 0.305340 0.039539 0.217254 -0.255142 0.161152 1.377738 1.673654 16.938850 -1.885749 4.143285 4.763104 -3.648863 5.081563 0.997109 -5.403621 -5.038651 18.570427 10.438336 -6.968575 -24.290100 -23.327129 -5.456102 -8.691787 -49.202919 -10.225882 -3.913328 -3.029912 -12.153958 -2.069226 0.436552 -0.352176 0.959725 -0.440223 0.498335 0.164844 18.800640 18.027386 -5.097826 47.701511 10.585001 -3.161278 4.930471 -3.219490 0.474945 -0.329705 0.346126 -0.035995 0.279390 -0.193889 -0.215205 +-3.700055 161.089981 -5.304625 -5.459035 11.417397 -4.370905 8.919687 -3.990988 -32.892670 4.719621 -2.631299 62.414093 -0.621527 -0.032382 -0.253748 0.772318 0.510506 0.637159 7.178439 7.141113 -6.887559 9.413719 -1.396781 31.385492 -0.533739 0.338407 0.046544 0.215893 -0.274104 0.146453 1.183635 1.560423 20.112841 -1.946585 4.516106 4.633256 -3.969219 5.446738 0.062529 -5.270811 -4.611331 19.771185 10.590975 -6.358570 -24.764013 -23.337696 -4.727475 -7.933431 -46.059875 -7.455133 -4.352599 -1.121212 -10.099092 -1.953547 0.454304 -0.390862 0.992206 -0.459425 0.523939 0.164508 17.932812 16.644169 -4.852449 43.475632 8.879509 -3.809905 3.719316 -3.919387 0.493247 -0.327533 0.376892 -0.046392 0.297838 -0.206166 -0.228980 +-4.230170 161.009979 -4.908067 -5.391903 9.911004 -6.324331 8.141214 -4.015886 -33.465736 3.902835 -2.138607 65.653336 -0.618434 -0.059633 -0.262143 0.784273 0.531671 0.657152 7.362815 7.137530 -4.857063 10.020396 -1.511466 32.175289 -0.546387 0.353239 0.049146 0.217707 -0.301873 0.146027 0.480422 1.964811 22.227631 -1.941046 4.897775 5.094965 -3.796236 5.802814 0.099601 -5.052799 -4.603489 19.660629 10.209729 -5.799301 -25.733595 -22.133482 -3.793023 -7.513168 -44.155209 -5.861660 -4.444392 1.045169 -7.803169 -1.774016 0.467210 -0.396980 1.004365 -0.472255 0.546696 0.159212 15.947800 15.561639 -4.604399 39.730682 7.417494 -4.274111 2.618038 -3.673816 0.461445 -0.324058 0.385768 -0.036964 0.290964 -0.219299 -0.237070 +-4.649909 160.982407 -4.456345 -4.897097 8.044132 -7.759527 7.129580 -3.701488 -33.950520 2.434736 -0.905148 68.046700 -0.567278 -0.109690 -0.251736 0.791232 0.558504 0.656296 6.894688 7.341344 -3.339985 10.693041 -1.602174 33.169521 -0.550341 0.356923 0.053911 0.209904 -0.321924 0.146254 -0.180039 2.533565 23.303581 -2.283835 5.312343 5.754400 -4.028460 6.098253 0.544943 -4.827488 -4.434423 18.788912 10.298202 -5.464774 -25.856817 -20.136738 -2.228923 -6.826283 -42.542194 -4.035356 -4.797617 2.826261 -7.419703 -1.665038 0.488975 -0.357993 0.975026 -0.480038 0.556512 0.165826 13.555342 14.611179 -4.277354 36.701172 6.347998 -4.459073 1.805836 -3.291048 0.420920 -0.296834 0.362327 -0.003108 0.260032 -0.244870 -0.220737 +-5.136848 160.980515 -3.908926 -4.729520 5.262616 -9.072851 7.009119 -2.416961 -33.923206 0.479808 0.948071 69.028908 -0.538666 -0.111515 -0.231386 0.758328 0.530239 0.627724 7.340661 7.830291 -1.892002 10.257276 -1.192133 34.147629 -0.540927 0.352997 0.060729 0.184976 -0.303629 0.147970 -0.553872 3.476938 23.967199 -2.540746 6.006273 6.481787 -4.276760 6.742264 1.088838 -4.740468 -4.220420 17.433125 10.389961 -5.287320 -25.893085 -17.643950 -0.260914 -6.279697 -41.360966 -2.508306 -5.087936 4.177069 -7.586514 -1.621331 0.480496 -0.350431 0.957908 -0.470131 0.547013 0.168863 10.696718 13.640912 -3.638309 33.917938 5.195716 -4.513232 1.852453 -2.401143 0.371252 -0.282587 0.362839 -0.002393 0.254553 -0.238057 -0.207730 +-5.673102 160.968918 -3.179827 -4.488407 2.199222 -9.961704 6.761600 -0.874082 -33.753017 -1.260345 2.780887 68.746666 -0.499820 -0.121450 -0.192676 0.722658 0.497435 0.586983 7.735133 8.368250 -0.669134 9.878084 -0.718180 34.887722 -0.511474 0.341385 0.082580 0.163110 -0.270551 0.124350 -1.171180 4.802898 23.820547 -2.737865 6.803915 7.112964 -4.354832 7.428541 1.673593 -4.726437 -3.751820 15.659914 10.995532 -5.321371 -24.884024 -14.488888 2.454476 -5.832412 -40.615459 -1.178024 -5.458930 5.070867 -8.539602 -1.633265 0.481976 -0.333029 0.920877 -0.453265 0.508516 0.185136 8.172437 12.075585 -3.089619 31.262337 4.172236 -4.510634 1.568522 -1.391018 0.315117 -0.265113 0.341937 -0.013063 0.251946 -0.243925 -0.190034 +-6.045443 161.154938 -2.479811 -4.345602 0.264955 -11.284180 6.274473 -0.036605 -33.198147 -3.752834 4.673784 67.294670 -0.480361 -0.101782 -0.162420 0.681199 0.447092 0.548282 7.943894 8.597098 1.079643 9.849933 -0.493284 35.296005 -0.489628 0.329359 0.096662 0.134069 -0.230963 0.121538 -1.291891 5.575139 24.090136 -2.811716 7.291533 7.981347 -4.524038 7.883126 2.367414 -4.924322 -3.425659 14.103881 11.398785 -5.455873 -24.535128 -12.019752 4.652412 -5.502891 -39.678032 0.003667 -5.805753 7.218094 -9.860481 -1.791672 0.465212 -0.330656 0.903789 -0.433754 0.478217 0.192308 5.731482 10.316743 -2.458726 28.315857 3.008001 -4.513628 1.214985 0.744363 0.264369 -0.259341 0.340508 -0.027417 0.255682 -0.229515 -0.178362 +-6.375471 161.469376 -1.775160 -4.304479 -0.941565 -12.486661 5.513461 0.377790 -32.600277 -5.867639 5.965476 64.767662 -0.458755 -0.070563 -0.131322 0.624120 0.374667 0.509615 8.318394 8.705842 2.775874 9.894506 -0.329877 35.559410 -0.452123 0.309094 0.104436 0.097279 -0.189909 0.114958 -1.222909 6.178157 24.121780 -2.744253 7.680165 8.791437 -4.580501 8.260159 3.067840 -5.085841 -3.527663 12.588505 11.146073 -5.948100 -23.310976 -10.716431 5.865695 -5.068224 -37.476646 1.250844 -5.898730 9.290425 -11.227266 -1.957080 0.436431 -0.325781 0.868926 -0.405232 0.431453 0.186142 4.466258 8.685677 -1.626946 24.942867 1.430896 -4.528524 -0.582997 2.888362 0.218945 -0.247001 0.331940 -0.044248 0.251913 -0.206343 -0.169544 +-6.683355 161.830551 -0.993514 -4.271409 -1.728187 -13.761124 4.440903 0.464509 -31.423830 -7.689936 6.672837 60.742199 -0.495195 -0.005116 -0.120670 0.554363 0.285538 0.458506 8.833310 8.657389 4.785453 10.033473 -0.234974 35.574581 -0.406920 0.301080 0.104227 0.077810 -0.130853 0.086522 -0.575349 6.261177 23.886868 -2.979573 7.890209 9.879624 -5.202965 8.540730 4.265458 -5.753566 -3.037740 11.241445 11.695488 -6.384079 -23.090385 -9.103849 6.938199 -4.883404 -35.290504 2.090719 -5.796532 11.265144 -12.689768 -2.240234 0.395483 -0.366637 0.867585 -0.382639 0.372902 0.166308 3.262946 7.174008 -1.315178 21.187616 1.068536 -4.075763 -0.351786 2.925920 0.261723 -0.258810 0.362569 -0.104326 0.293801 -0.149990 -0.175701 +-7.043891 162.098755 -0.049330 -4.160469 -1.791052 -14.417738 2.994115 0.122842 -30.840187 -8.887682 6.811105 56.824108 -0.496656 0.027183 -0.106951 0.541792 0.265790 0.420645 8.846130 8.662286 5.966333 10.838997 -0.455921 35.720875 -0.384959 0.265421 0.106791 0.080409 -0.088521 0.089626 -0.084268 6.365775 22.389635 -3.164983 8.041585 10.889608 -5.576904 8.716266 5.974546 -6.069462 -3.125971 10.091981 12.230101 -7.198275 -22.276144 -7.419556 7.690780 -4.718075 -32.664898 2.460795 -5.464011 12.799684 -13.810371 -2.472816 0.376884 -0.336484 0.838519 -0.358137 0.332176 0.180393 2.351725 5.616473 -1.170618 17.296295 0.982234 -3.428511 0.276717 1.454743 0.286641 -0.269410 0.332852 -0.112497 0.294625 -0.135123 -0.159617 +-7.422910 162.364868 0.918160 -4.123700 -2.242906 -15.092424 1.826603 0.074590 -29.423367 -9.619883 6.583418 51.775143 -0.483441 0.033626 -0.083505 0.533490 0.261007 0.391314 8.879706 8.889065 6.860559 11.753366 -0.647050 36.130367 -0.370328 0.257235 0.120622 0.081716 -0.052200 0.076185 0.452950 6.533315 21.246351 -3.406180 8.319160 11.633908 -6.080700 8.961723 7.215721 -6.468230 -2.835513 9.475590 13.120923 -7.689601 -21.768579 -5.713641 8.120588 -4.185177 -30.186108 3.302296 -5.242072 14.473454 -14.910348 -2.715931 0.374842 -0.330612 0.816061 -0.346283 0.306125 0.200743 1.718016 4.551305 -0.803679 13.974302 0.513172 -2.942636 0.756237 -0.179769 0.285791 -0.269165 0.322657 -0.119974 0.313021 -0.135265 -0.139872 +-7.895586 162.493103 2.090932 -4.333530 -2.742626 -15.129280 1.447024 0.330546 -28.100103 -11.089450 6.488171 45.802528 -0.479104 0.038896 -0.068683 0.524312 0.257081 0.363153 9.413212 9.269198 6.943058 12.501180 -0.769285 36.864906 -0.352879 0.242712 0.130685 0.088373 -0.023924 0.060189 1.294305 6.604326 19.510118 -3.770504 8.642481 11.895184 -6.832510 9.248810 8.184788 -6.554145 -2.706801 9.125379 13.703918 -8.081475 -20.992449 -3.931792 8.749782 -3.796303 -27.135714 3.872879 -4.786327 15.746517 -15.616330 -2.856759 0.371702 -0.322755 0.793702 -0.332653 0.278484 0.215741 1.016898 3.078273 -0.572713 12.038421 -0.203411 -2.654481 0.782950 -0.493135 0.264350 -0.272291 0.307191 -0.131190 0.324828 -0.134601 -0.126623 +-8.325589 162.601318 3.268969 -4.537520 -3.553150 -15.281181 1.292840 0.744865 -25.927687 -12.554935 6.178078 38.921799 -0.487318 0.079555 -0.055947 0.468658 0.195079 0.311466 9.913964 9.700968 7.122727 12.962446 -0.762768 37.477596 -0.318319 0.231444 0.139498 0.066270 0.029360 0.043972 2.342352 6.794458 17.749067 -4.053502 9.034330 12.074540 -7.597500 9.693402 8.992167 -6.849308 -2.476460 9.744621 14.074791 -8.685578 -19.323400 -2.267720 8.541321 -3.049881 -24.066637 4.820086 -4.326739 16.908501 -15.207360 -2.838797 0.335593 -0.351225 0.777400 -0.303854 0.235210 0.208854 0.295125 2.417596 0.292638 9.725731 -1.509158 -2.288901 1.440996 -0.498258 0.256831 -0.278899 0.327252 -0.161716 0.351425 -0.093769 -0.118488 +-8.709893 162.543915 4.454265 -4.879022 -3.550818 -15.363842 0.729406 0.667539 -23.566408 -13.148077 5.263333 31.820438 -0.498152 0.114442 -0.056705 0.451587 0.158480 0.297821 10.746673 10.023183 7.140649 13.338786 -0.776102 38.205318 -0.304517 0.210080 0.134912 0.055933 0.049590 0.052829 3.071229 6.932812 15.987280 -4.073936 9.171741 12.167547 -7.862047 9.902498 9.749548 -6.619665 -2.501984 10.385706 14.162013 -8.986056 -17.884083 -1.087291 8.534575 -2.592966 -21.284298 5.593383 -3.912184 18.667006 -15.473011 -3.024328 0.314754 -0.341191 0.773489 -0.286038 0.212983 0.205542 -0.518731 1.754865 0.949679 7.635855 -2.551775 -1.919943 2.011223 -0.354104 0.242023 -0.287486 0.316954 -0.173439 0.342645 -0.075311 -0.123357 +-9.090425 162.285110 5.649485 -5.405794 -3.362160 -14.824477 0.163126 0.396351 -21.957710 -12.847582 4.088204 25.156433 -0.512493 0.122933 -0.067894 0.459526 0.174108 0.284005 11.073026 10.466381 6.261765 14.638362 -1.185547 39.084148 -0.298691 0.192396 0.125199 0.076768 0.058601 0.050769 4.082524 7.049643 13.160181 -4.111020 9.359155 12.337749 -8.149163 10.249475 11.264407 -6.492524 -3.143072 10.836895 14.594754 -9.670050 -17.719236 -0.660843 8.277614 -2.550275 -17.510607 5.862931 -3.222911 20.243835 -16.140551 -3.287871 0.308926 -0.322903 0.758851 -0.280071 0.198310 0.206856 -0.527988 0.741014 1.023506 4.499062 -2.922536 -1.327293 2.958824 -1.229639 0.152621 -0.298473 0.299991 -0.173350 0.344645 -0.066927 -0.116699 +-9.481856 161.961151 6.749311 -5.928102 -2.501269 -14.513174 -0.667793 -0.155260 -20.689739 -11.678638 2.950583 19.980234 -0.546611 0.152325 -0.074074 0.464723 0.172147 0.289092 11.398046 10.681211 5.581599 16.150942 -1.806721 39.871658 -0.294526 0.177528 0.119519 0.095148 0.072382 0.047761 4.497272 6.969127 11.071962 -4.101716 9.174507 12.408237 -8.161904 10.204678 12.322958 -5.981243 -3.629343 11.007959 14.470870 -9.804289 -17.583473 -0.087978 8.411112 -2.557572 -14.237834 6.203336 -2.560209 21.779766 -17.071503 -3.602466 0.293362 -0.329949 0.763684 -0.269080 0.184615 0.207111 -1.037800 -0.035908 0.837356 2.260914 -2.695381 -0.929959 3.706935 -2.154623 0.054548 -0.319326 0.294437 -0.194493 0.360667 -0.058418 -0.126474 +-9.864823 161.544952 7.893945 -6.429725 -0.689891 -14.590741 -1.791793 -0.927324 -19.238655 -10.153143 1.988053 15.987058 -0.560850 0.163427 -0.081149 0.467508 0.173826 0.280844 11.678406 10.444448 5.446476 17.918608 -2.690297 40.274136 -0.285932 0.177088 0.120247 0.106621 0.082785 0.039348 4.902253 6.458735 9.532441 -4.223984 8.674844 12.528913 -8.378658 9.819111 13.155441 -6.139990 -3.543532 11.555869 15.155403 -10.102446 -17.464794 1.106026 8.140964 -2.268770 -11.319903 6.410719 -1.963722 22.542982 -16.883654 -3.589069 0.289758 -0.333608 0.763419 -0.267200 0.172771 0.207659 -1.278386 -0.559549 0.782265 0.024249 -2.711612 -0.594961 3.936903 -2.636563 0.006567 -0.328585 0.297146 -0.203621 0.372415 -0.050499 -0.126424 +-10.236027 160.926682 9.184352 -7.071791 1.453924 -14.736541 -2.764009 -1.457778 -17.713989 -9.014901 1.390483 13.116459 -0.590805 0.172143 -0.094154 0.493037 0.193191 0.307161 12.320220 9.984034 5.581549 19.335611 -3.506281 40.569923 -0.296159 0.176414 0.114903 0.129018 0.071098 0.039683 4.689802 6.005881 7.902266 -4.081151 7.967450 12.642797 -7.943502 9.226802 14.069006 -5.914043 -3.457068 11.850121 14.906630 -9.697120 -17.907877 2.018377 7.953105 -1.862757 -8.093374 7.126615 -1.215654 21.884457 -16.812366 -3.389329 0.293359 -0.338993 0.783288 -0.272826 0.180915 0.209022 -1.602516 -1.213488 0.670260 -1.894455 -2.772046 -0.266233 4.040524 -2.370249 -0.003042 -0.344508 0.294356 -0.213830 0.379849 -0.057685 -0.142113 +-10.576520 160.189362 10.298396 -7.475506 2.554207 -15.058746 -3.038265 -1.506967 -16.541637 -8.988110 1.246997 11.744662 -0.566054 0.077389 -0.095852 0.569936 0.315127 0.363072 12.580375 9.777960 5.806503 20.950594 -4.317551 41.111622 -0.330561 0.204935 0.124383 0.181698 0.011658 0.012631 4.339998 5.832718 6.643101 -3.928652 7.675804 12.793781 -7.478076 8.866470 14.945797 -5.388284 -3.582959 12.486918 14.711348 -8.928375 -18.849380 2.608743 7.828300 -1.661123 -5.340085 7.505740 -0.701340 22.242306 -16.825874 -3.263389 0.355096 -0.331090 0.777423 -0.306707 0.227505 0.233599 -2.128025 -1.689717 0.631834 -3.311277 -2.893536 0.072751 4.037404 -1.962477 -0.025643 -0.330064 0.270560 -0.181401 0.380369 -0.133207 -0.136969 +-11.032528 159.446243 11.193484 -7.607469 3.634754 -15.747669 -3.134311 -1.553056 -15.765891 -9.566685 1.375394 12.152218 -0.535405 0.030291 -0.098619 0.592533 0.347728 0.405280 12.620081 9.516385 6.353779 22.621572 -5.248260 41.567814 -0.351778 0.220795 0.125732 0.177200 -0.034986 0.021091 3.374327 5.782463 6.562540 -3.768897 7.341855 12.736885 -6.838039 8.423208 14.859060 -4.586175 -3.785986 13.274812 13.829673 -8.101556 -18.517960 3.129670 6.874203 -0.997113 -2.948442 8.548265 -0.354932 23.053068 -16.098471 -3.058595 0.376533 -0.325137 0.779378 -0.319449 0.266113 0.230989 -2.915638 -1.166665 1.384980 -3.977428 -3.900332 0.220550 4.057785 -1.815060 -0.014403 -0.309928 0.263900 -0.151795 0.349665 -0.169242 -0.144192 +-11.477907 158.634018 12.021916 -7.294706 3.866702 -16.411154 -2.865041 -1.395903 -15.400959 -10.996572 1.788512 13.340425 -0.535774 0.012436 -0.110394 0.592584 0.359519 0.411562 12.396415 9.513542 6.994771 23.720787 -5.925977 42.378113 -0.360968 0.227914 0.122886 0.177864 -0.053487 0.022422 2.369140 6.021291 6.628178 -3.811535 7.327988 12.753875 -6.479008 8.357909 14.825266 -3.926337 -3.957463 13.469325 13.676326 -7.555861 -18.777166 3.649189 6.354259 -0.838647 -0.453328 8.693585 0.091548 23.335814 -15.458507 -2.870138 0.377976 -0.330938 0.787290 -0.324018 0.283123 0.222324 -3.221347 -0.906817 1.711321 -4.653479 -4.566107 0.260133 3.746727 -2.333239 -0.028880 -0.309737 0.272668 -0.146323 0.342351 -0.171088 -0.150913 +-11.754618 157.874908 12.566226 -6.659654 3.815828 -17.352358 -2.966582 -1.490204 -15.250084 -12.057277 2.244631 15.386659 -0.532942 0.010417 -0.119503 0.575033 0.339235 0.401948 11.586409 9.632736 7.758195 24.762545 -6.661480 43.461388 -0.357823 0.244944 0.119760 0.160645 -0.057218 0.021373 1.668211 6.086178 7.625755 -4.124602 7.338911 12.900241 -6.647751 8.325468 14.473283 -4.114501 -3.687254 13.286473 14.529540 -7.468236 -19.317369 4.519283 5.972566 -0.655293 0.756444 8.910223 0.194656 24.363049 -15.196894 -2.902202 0.377059 -0.338005 0.798529 -0.333622 0.285687 0.206502 -3.229116 -0.433697 2.063303 -5.193028 -5.077242 0.235147 3.725788 -2.920979 -0.041102 -0.303371 0.296200 -0.146385 0.339356 -0.154236 -0.154506 +-12.004084 157.237991 12.936157 -6.305942 3.615783 -18.167765 -2.459479 -1.337810 -15.212354 -13.498231 2.791792 17.171534 -0.489782 -0.050843 -0.094904 0.603037 0.385974 0.406871 11.293916 9.692673 8.308476 25.431528 -7.210978 44.615311 -0.369310 0.265380 0.138930 0.170041 -0.069312 -0.002897 1.127866 5.955515 8.764842 -4.382669 7.334832 12.957771 -6.816120 8.136098 13.948115 -4.419566 -3.153421 13.009773 15.650078 -7.373028 -19.349434 5.438451 5.678382 -0.388690 0.913781 9.065556 0.015867 25.505732 -14.885599 -2.884380 0.430137 -0.323295 0.791334 -0.356550 0.300953 0.241294 -3.014028 0.153495 2.275024 -5.376196 -5.154175 0.194067 3.504311 -3.401726 -0.070221 -0.277609 0.279147 -0.132339 0.340039 -0.204605 -0.134652 +-12.140893 156.678543 13.231537 -6.229176 3.445084 -18.446049 -1.536514 -1.159212 -15.634907 -15.038079 3.294131 18.541788 -0.463389 -0.059730 -0.076676 0.604382 0.388259 0.389530 11.291673 9.667732 8.384093 25.887857 -7.714139 45.613132 -0.368481 0.256638 0.150165 0.161794 -0.054369 0.002377 1.364210 5.486217 9.669513 -4.779380 7.198331 12.780397 -7.464574 7.914199 13.271833 -4.824913 -2.566663 12.457442 16.054541 -7.431819 -18.840149 5.961504 5.381151 -0.254147 1.152591 8.954454 -0.044735 25.942503 -14.216311 -2.751684 0.439331 -0.300730 0.778080 -0.352244 0.295451 0.261929 -2.842363 0.548663 2.284291 -5.187572 -4.820549 0.114477 3.618735 -3.787461 -0.104767 -0.269047 0.262371 -0.121411 0.331794 -0.215339 -0.117003 +-12.163268 156.325226 13.313647 -6.207879 2.716420 -18.530725 -0.798228 -0.952371 -15.733153 -15.976245 3.521087 18.726164 -0.451276 -0.060329 -0.062844 0.566421 0.359079 0.338161 11.524342 9.766999 8.315435 25.639431 -7.772152 46.547638 -0.343655 0.253816 0.164740 0.146837 -0.021867 -0.019739 1.977451 4.988690 10.728998 -5.274837 7.147072 12.504950 -8.386013 7.781594 12.364853 -5.290700 -1.732056 11.745614 16.866001 -7.538753 -18.161772 6.321446 5.139113 -0.095538 0.651253 9.072498 -0.247198 26.910023 -14.317163 -2.854932 0.433777 -0.305133 0.760922 -0.341527 0.265702 0.266666 -2.344515 0.992614 2.391790 -4.722337 -4.535479 0.062922 3.664660 -3.335208 -0.064310 -0.264414 0.270255 -0.136835 0.344769 -0.197493 -0.102238 +-12.189753 156.204514 13.209477 -6.296937 2.237329 -18.538651 -0.196385 -0.842635 -15.620030 -16.648272 3.532489 18.272446 -0.421624 -0.062168 -0.044324 0.548567 0.338759 0.306686 11.848676 9.686393 8.116293 25.149817 -7.674862 47.029305 -0.335757 0.249593 0.175524 0.125016 0.000061 -0.014687 2.419848 4.389591 11.900627 -5.707050 6.949331 12.287120 -9.131953 7.471502 11.475921 -5.680685 -1.111133 10.893270 17.812616 -7.712327 -17.820562 6.519305 4.803987 0.275100 -0.151435 9.524633 -0.458687 27.471832 -15.247224 -3.120506 0.434999 -0.286010 0.748011 -0.336069 0.253858 0.279028 -1.653504 1.503774 2.651853 -3.934599 -4.403604 0.036218 3.880179 -2.273012 0.014895 -0.253817 0.264878 -0.129494 0.336162 -0.193867 -0.084758 +-12.258320 156.320297 12.972820 -6.370316 2.379146 -18.180025 -0.111760 -1.011142 -15.512547 -16.722134 3.250673 17.135126 -0.440092 -0.007641 -0.028148 0.517641 0.298907 0.276611 12.050435 9.344055 7.730395 24.413095 -7.506826 47.093266 -0.309598 0.220128 0.180614 0.122768 0.053540 -0.014729 2.093888 4.088501 12.456456 -5.736309 6.593401 12.289157 -9.027953 7.131604 11.195807 -5.441470 -0.945093 9.397714 17.450848 -7.749553 -17.205772 6.627807 5.445283 -0.556064 -2.006414 7.137973 -0.851998 28.450481 -15.871873 -3.580874 0.388686 -0.293490 0.725561 -0.298766 0.210566 0.279196 -1.326600 1.048519 2.015600 -2.466781 -3.484174 -0.133951 3.995342 -2.012242 0.005046 -0.274097 0.260361 -0.156308 0.359528 -0.163621 -0.081235 +-12.233031 156.677017 12.600430 -6.862566 2.167047 -17.945341 0.107629 -1.063304 -14.915633 -16.067343 2.740838 15.318274 -0.466176 0.045496 -0.023798 0.488294 0.249888 0.274261 12.590283 8.930395 7.613179 23.621336 -7.181594 46.643768 -0.293799 0.218007 0.181075 0.108841 0.084267 -0.009947 2.462157 3.703882 13.238460 -5.646223 6.314587 12.249623 -9.064575 6.913510 10.781544 -5.288212 -1.016388 8.728507 17.213570 -7.698281 -17.416704 6.649496 5.805310 -1.218261 -4.689087 4.937608 -1.356343 29.498144 -17.218878 -4.320535 0.346171 -0.329679 0.732530 -0.277607 0.190315 0.260818 -1.481122 0.950674 1.551869 0.289414 -2.788719 -0.583706 3.724111 -2.041247 0.041688 -0.290575 0.286985 -0.182382 0.383343 -0.131012 -0.093848 +-12.187605 157.092422 12.134873 -7.277102 2.349147 -17.486326 -0.299998 -1.329397 -14.468218 -14.614100 2.097471 13.347012 -0.474041 0.108227 -0.019255 0.420475 0.162894 0.228699 12.924494 8.456316 7.200593 22.933365 -6.960938 46.031380 -0.267872 0.182777 0.172078 0.069147 0.126971 0.012523 2.433203 3.421620 14.182847 -5.411819 5.896744 11.808802 -8.784131 6.479448 9.729136 -4.818884 -1.033386 8.062301 16.318027 -7.672631 -15.897619 6.520482 5.928554 -1.331696 -7.374492 3.514424 -1.666415 29.705997 -19.821272 -5.242815 0.285555 -0.327840 0.716255 -0.236875 0.154716 0.239262 -1.659985 1.161210 1.459286 3.382258 -2.585826 -1.051680 3.455165 -1.741092 0.094011 -0.300304 0.291817 -0.200811 0.372951 -0.075877 -0.096976 +-12.105247 157.532501 11.632055 -7.176392 2.172981 -16.553852 -1.237175 -1.552315 -14.162011 -12.741652 1.438776 10.710757 -0.459499 0.110266 -0.010060 0.422467 0.170392 0.241272 12.404871 8.134282 6.572304 22.403255 -6.671595 44.991665 -0.269803 0.159104 0.171338 0.069817 0.126816 0.029661 1.367676 3.754752 14.370745 -4.876679 5.635292 11.436094 -7.680348 6.152471 9.166446 -3.867156 -1.165315 7.536928 14.857112 -6.968556 -15.042185 6.164510 6.532460 -1.823331 -10.642793 1.309045 -2.002665 29.405722 -22.136473 -6.036434 0.266510 -0.310068 0.691340 -0.214316 0.155742 0.241722 -2.195982 0.912099 0.883817 6.705359 -1.676299 -1.420694 3.741755 -1.833966 0.063025 -0.299391 0.265327 -0.188253 0.354361 -0.087377 -0.095894 +-11.824604 158.009827 10.992702 -7.711839 2.075364 -15.587891 -2.088654 -1.835086 -14.202435 -10.109858 0.801686 8.486234 -0.441670 0.088577 -0.027452 0.479225 0.227037 0.306912 12.040537 7.666810 5.746990 22.462009 -6.724844 43.824299 -0.295205 0.133230 0.165084 0.084466 0.069559 0.081053 0.806512 3.957070 14.487797 -3.805872 5.297740 11.191707 -6.132635 5.824849 8.921922 -2.679579 -1.973135 7.175693 12.479910 -6.068850 -15.259023 4.406346 7.096613 -2.811057 -13.778641 -1.106776 -2.268214 28.906534 -24.795628 -6.924478 0.263654 -0.253814 0.673941 -0.206272 0.191188 0.238607 -3.153684 0.288356 0.224831 10.035183 -0.926798 -1.743588 4.105676 -1.873696 0.025924 -0.303234 0.214187 -0.132173 0.288749 -0.126169 -0.109405 +-11.486158 158.456665 10.193080 -8.740442 1.905554 -14.505961 -2.350240 -1.884379 -14.665668 -7.717851 0.374252 6.604163 -0.439979 0.081357 -0.036211 0.511341 0.261599 0.356569 12.131114 7.159822 4.751263 22.863031 -6.897527 42.459049 -0.318512 0.120248 0.161797 0.093616 0.037566 0.114388 1.206626 3.983779 14.601110 -2.751334 5.130107 10.879861 -5.038743 5.701476 8.615458 -1.284028 -2.591045 7.060310 10.643373 -5.052985 -15.613962 2.561202 7.182442 -3.885128 -16.511860 -3.883932 -2.304093 27.073845 -27.518414 -7.518256 0.250585 -0.238313 0.671737 -0.196097 0.220594 0.234636 -4.112470 -0.486091 -0.340489 13.856544 -0.541222 -2.200242 4.130472 -1.385617 0.026595 -0.312973 0.194391 -0.104998 0.260935 -0.147834 -0.123990 +-11.165329 158.871689 9.294290 -9.580932 1.938409 -13.071809 -2.774422 -1.995113 -15.587181 -5.479844 0.084802 4.950943 -0.450784 0.073900 -0.059684 0.516137 0.270156 0.368477 12.051138 6.629433 3.344998 23.300184 -7.073602 40.853096 -0.325742 0.112034 0.151600 0.096996 0.010127 0.127193 2.367603 3.662552 14.544272 -2.300927 5.032442 10.374562 -4.940774 5.629103 8.166381 -0.456285 -2.840114 7.537911 9.931774 -4.497946 -15.633410 1.278644 6.299837 -4.638807 -18.993738 -6.416201 -2.319404 24.388172 -28.466503 -7.368638 0.246393 -0.226625 0.678114 -0.196447 0.234327 0.220154 -4.338342 -1.046778 -0.519125 18.322056 -0.927267 -2.912134 3.519533 0.244504 0.066412 -0.319135 0.188831 -0.095946 0.236173 -0.145618 -0.138050 +-10.768684 159.136658 8.369044 -10.365875 1.587422 -11.407109 -3.041477 -2.004628 -16.891371 -3.434665 -0.069550 3.456881 -0.468509 0.084028 -0.069495 0.529481 0.272144 0.419691 11.766008 6.263106 1.633495 24.164347 -7.413058 39.434261 -0.344595 0.114909 0.143007 0.096394 -0.017786 0.148005 3.174097 3.375661 14.198696 -1.732412 4.794790 9.791350 -4.461377 5.439648 7.734949 0.695003 -3.263393 7.727342 8.347216 -3.514747 -16.261333 -0.609418 5.460496 -5.295821 -21.369019 -7.883554 -2.388442 21.405855 -29.465984 -7.074156 0.232986 -0.244612 0.700580 -0.194923 0.261266 0.204230 -4.472658 -1.269404 -0.997553 22.855288 -0.506443 -3.657374 2.081141 1.298265 0.078064 -0.327344 0.196078 -0.094661 0.226753 -0.153219 -0.164778 +-10.362288 159.424927 7.513436 -10.676368 -0.541627 -10.126528 -2.962898 -1.659159 -17.407568 -1.695443 -0.096874 1.489791 -0.472091 0.054948 -0.101665 0.572698 0.324096 0.480299 11.640573 6.414000 0.549522 24.135914 -7.255526 38.962532 -0.374231 0.121832 0.122955 0.116367 -0.078071 0.170036 3.389520 3.627431 13.544667 -1.203354 4.916288 9.550274 -3.726349 5.574574 7.882900 1.832137 -2.895388 8.249529 7.252992 -1.913786 -17.259890 -3.327069 4.371879 -6.073265 -23.620604 -8.793082 -2.706412 19.274776 -29.980612 -6.865378 0.242340 -0.222372 0.712701 -0.211066 0.304585 0.186890 -3.192371 -1.151574 -1.539329 25.508799 0.351278 -3.907566 1.875103 2.776520 0.017741 -0.325225 0.183665 -0.065521 0.191465 -0.176826 -0.187005 +-10.015802 159.633789 6.774328 -10.743060 -4.249978 -9.004866 -2.176583 -1.023096 -17.446777 -0.428128 -0.050101 -0.618364 -0.486922 0.037035 -0.126380 0.618947 0.360951 0.545748 11.812025 6.992308 -0.135721 22.769899 -6.445992 39.025208 -0.410490 0.136140 0.103693 0.129657 -0.135156 0.191831 3.887447 3.945993 13.276469 -1.011871 5.296007 9.298170 -3.598031 5.982064 7.785995 1.855152 -1.910181 8.998516 6.085312 -0.431414 -18.625816 -5.510310 3.480265 -6.606335 -26.439394 -9.226962 -3.130168 17.302073 -29.293293 -6.484406 0.265439 -0.214550 0.751546 -0.239301 0.350855 0.175817 -1.920061 -1.061195 -1.949684 28.230600 1.015548 -4.318895 2.411154 6.408478 -0.120510 -0.323313 0.180882 -0.048902 0.166654 -0.200655 -0.213644 +-9.753320 159.763275 5.946462 -10.768269 -7.751304 -8.021132 -1.151258 -0.476258 -17.733234 0.198507 0.003402 -1.863529 -0.481496 0.011635 -0.135894 0.662701 0.404263 0.602277 11.815592 7.464859 -0.753441 21.749920 -5.827280 39.087379 -0.442300 0.152349 0.090666 0.145218 -0.180264 0.205419 3.474221 4.371689 13.129768 -0.515508 5.450000 9.112489 -2.694355 6.131138 7.655249 1.867284 -0.771943 9.392219 5.225754 0.983774 -19.677412 -7.801723 2.592673 -6.890826 -29.759911 -9.232000 -3.716399 16.027205 -28.753725 -6.338119 0.291514 -0.202986 0.771694 -0.263768 0.392568 0.177291 0.135106 -0.453572 -2.622035 29.660341 2.229525 -4.469664 2.748702 9.116249 -0.250170 -0.311327 0.171817 -0.030197 0.149583 -0.234253 -0.226408 +-9.554166 159.707367 5.080445 -10.682375 -11.093835 -7.073360 0.232117 -0.034097 -18.682926 0.234990 0.017817 -1.927449 -0.497061 0.011271 -0.154227 0.695764 0.438507 0.622805 12.035393 7.999822 -1.598497 20.276812 -5.091345 39.508476 -0.456617 0.143508 0.079380 0.168213 -0.197154 0.221194 2.834883 4.844185 12.949556 -0.078207 5.593792 9.071894 -1.730728 6.275786 7.728148 1.451176 0.621287 8.959104 4.835809 1.975133 -20.670458 -9.961541 1.764418 -7.482730 -32.615372 -9.744394 -4.036368 13.958906 -28.009691 -5.955474 0.294939 -0.177878 0.779480 -0.270012 0.403941 0.176914 3.292212 0.021180 -3.832868 29.940405 3.884016 -4.385713 3.431431 11.219625 -0.329157 -0.321903 0.155525 -0.019049 0.137339 -0.240127 -0.233515 +-9.172022 159.536179 4.287268 -10.531297 -13.868399 -6.487523 1.454017 0.080399 -19.953587 0.083305 -0.016876 -0.470651 -0.544859 0.050466 -0.173859 0.709304 0.448273 0.636417 11.873093 8.151453 -1.935811 18.922718 -4.566908 39.686890 -0.458207 0.120636 0.071339 0.193853 -0.189472 0.235707 2.585171 4.929061 12.497750 0.263597 5.477036 9.288976 -0.986578 6.209398 8.301510 1.181025 1.761880 8.599656 3.503222 2.945799 -21.269123 -12.909211 0.250549 -8.175206 -33.912518 -10.129675 -4.193420 10.952181 -27.437540 -5.363461 0.261794 -0.185990 0.787387 -0.250892 0.397778 0.167995 6.924839 0.775010 -5.268367 29.368313 5.833721 -4.142728 4.577650 12.763718 -0.318809 -0.355796 0.153093 -0.032387 0.149409 -0.222347 -0.250208 +-8.735766 159.302094 3.495360 -10.154297 -16.510944 -6.336051 2.687575 0.032264 -21.391552 -0.546176 -0.056879 2.189341 -0.582823 0.086696 -0.183261 0.734651 0.480606 0.666497 11.586700 8.275984 -2.092062 17.515150 -4.091831 40.286354 -0.461133 0.090816 0.060040 0.235942 -0.177562 0.247518 2.311195 4.932173 12.279837 0.499985 5.371855 9.665775 -0.405770 6.070732 9.070761 1.400689 2.949356 7.851189 1.935036 4.203703 -21.539318 -16.289186 -1.296401 -9.335744 -34.191463 -11.115684 -4.075907 7.255441 -26.229082 -4.458590 0.222805 -0.189869 0.773111 -0.221481 0.392052 0.166237 10.983436 1.267169 -7.181695 28.194967 8.150480 -3.735981 6.912456 14.313531 -0.148609 -0.384245 0.132853 -0.042660 0.166261 -0.222504 -0.260851 +-8.228956 159.090851 2.613524 -9.674929 -19.653587 -6.441548 4.778462 0.103319 -23.311642 -2.880351 0.039479 6.514984 -0.613003 0.109717 -0.188663 0.758729 0.502808 0.692191 11.037043 8.567432 -2.312833 16.089779 -3.593109 41.139725 -0.469174 0.095240 0.049079 0.267381 -0.170634 0.242277 2.197282 4.846527 13.150053 0.622613 5.322367 9.724824 -0.215018 6.000103 8.952825 0.588603 4.860611 7.727464 1.822828 5.147485 -22.076241 -18.109533 -2.546503 -10.031176 -35.841206 -12.272231 -3.879541 4.546419 -24.582525 -3.834703 0.216030 -0.207590 0.784267 -0.223131 0.394707 0.168411 14.176224 2.165993 -8.892341 28.154507 10.636209 -3.422447 9.278061 15.029361 0.134653 -0.396183 0.136905 -0.059782 0.196579 -0.224280 -0.268998 +-7.672782 158.921707 1.752458 -9.337086 -22.675936 -6.650127 7.111570 0.265263 -25.584240 -5.432250 0.419341 12.321162 -0.636163 0.111654 -0.204623 0.789197 0.526674 0.726981 10.958919 8.799173 -2.446165 14.123393 -2.879994 41.935795 -0.487384 0.104296 0.040392 0.285007 -0.192338 0.248215 2.081067 4.785146 14.379545 0.974503 5.271582 9.644013 0.256006 5.960065 8.507165 -0.287498 6.491506 8.313399 1.108517 6.137515 -22.766132 -19.582798 -3.797518 -10.279150 -38.393330 -13.199995 -3.839222 2.764426 -24.543068 -3.639683 0.226223 -0.216343 0.810983 -0.237401 0.415800 0.166459 16.254305 3.311919 -10.049994 29.119520 12.619970 -3.263388 10.961274 15.305230 0.368482 -0.402988 0.142162 -0.060848 0.200952 -0.232675 -0.283983 +-7.063866 158.794724 0.929292 -8.588428 -25.256002 -7.034620 9.284584 0.214736 -28.314030 -8.723649 1.278155 19.648899 -0.619495 0.064143 -0.228233 0.837040 0.585594 0.758053 10.341713 8.946970 -2.767771 12.391591 -2.348774 42.892838 -0.521324 0.120074 0.027642 0.298312 -0.245361 0.265464 1.843598 4.651171 15.952848 1.166214 5.239953 9.381445 0.535340 5.878619 7.715352 -1.167545 8.114583 9.229746 0.719982 7.116445 -23.612904 -20.519329 -5.584527 -9.936342 -40.615978 -13.899993 -3.865438 1.144542 -25.576572 -3.512211 0.267486 -0.182611 0.826508 -0.272163 0.461143 0.170335 18.022318 4.773543 -10.540502 30.964613 13.816966 -3.302941 11.883787 16.041054 0.493940 -0.387114 0.131579 -0.020390 0.169809 -0.259166 -0.282431 +-6.425145 158.786209 0.182950 -7.582339 -27.892616 -7.406356 11.398551 0.158419 -30.935560 -12.378336 2.696329 27.031349 -0.615334 0.024362 -0.251280 0.858736 0.620031 0.785345 9.368890 8.993286 -3.085620 10.803086 -1.870944 43.360626 -0.545688 0.151365 0.020230 0.302255 -0.291567 0.264251 1.344945 4.636975 17.044071 1.277169 5.192320 9.088566 0.881750 5.828482 7.038770 -1.838528 9.580663 11.048082 -0.033992 8.218720 -24.259003 -20.974840 -7.602017 -9.410316 -43.056358 -14.798287 -3.768966 -0.274711 -26.678377 -3.435072 0.295781 -0.194723 0.850567 -0.302749 0.502459 0.160458 19.080612 6.628206 -10.669480 33.482502 14.985076 -3.254134 12.418055 16.110548 0.547830 -0.373111 0.153378 -0.001379 0.163181 -0.270848 -0.289993 +-5.734099 158.856125 -0.518818 -6.809907 -30.579470 -7.550349 13.400704 0.121882 -33.016388 -15.408962 4.352577 33.676102 -0.626646 0.023545 -0.263316 0.858298 0.613667 0.795665 8.653202 9.076246 -3.766886 9.173681 -1.362657 43.767143 -0.547694 0.166566 0.016648 0.299375 -0.304079 0.257012 1.180748 4.611382 17.794598 1.416092 5.238131 8.803474 1.131272 5.921054 6.466387 -2.449370 10.721713 12.514604 -0.285077 8.840532 -23.884501 -21.824026 -9.999587 -8.896431 -45.014500 -15.913357 -3.560483 -1.642877 -28.329353 -3.389562 0.301999 -0.213824 0.869005 -0.313514 0.510015 0.150139 20.552895 8.372422 -10.289063 34.785896 15.441662 -3.345138 13.876097 18.417870 0.850852 -0.370481 0.171608 -0.008109 0.167767 -0.265264 -0.301268 +-5.080856 159.128662 -1.222585 -6.123955 -33.404877 -7.895464 15.146324 0.036083 -34.329250 -17.774126 6.158177 39.931210 -0.658255 0.021642 -0.291472 0.870189 0.615126 0.847926 8.029611 9.127069 -4.338978 7.508443 -0.824190 44.040855 -0.566306 0.185212 0.002085 0.301694 -0.349018 0.258370 0.837340 4.727928 18.217047 1.625928 5.275351 8.767420 1.628955 6.021292 6.427030 -2.078348 11.463920 14.774514 -1.915507 10.211136 -24.178553 -22.797016 -12.876400 -8.575180 -46.401260 -17.695297 -3.031675 -3.264457 -29.202883 -3.167481 0.304311 -0.247500 0.908528 -0.328271 0.541705 0.124476 21.120480 10.514746 -9.856177 36.316490 16.214890 -3.311450 15.704465 20.593342 1.256162 -0.374275 0.194726 -0.016687 0.163494 -0.266890 -0.338205 +-4.478435 159.522491 -1.854326 -5.243031 -36.308411 -8.383995 16.863348 0.024552 -35.057407 -20.436405 8.400620 45.672112 -0.705283 0.028226 -0.325621 0.902137 0.633898 0.910241 7.333644 9.236161 -5.073282 5.537334 -0.134703 44.540131 -0.595285 0.202722 -0.012282 0.316869 -0.393063 0.270928 0.219744 5.124094 18.338137 1.784375 5.417981 8.933867 2.215036 6.213049 6.807394 -1.600638 12.038110 16.592712 -3.133415 11.378983 -25.478693 -23.222706 -15.719395 -8.550082 -48.061256 -20.138439 -2.316854 -4.268013 -30.914459 -3.161460 0.305300 -0.280671 0.961503 -0.345210 0.581408 0.104103 21.850754 12.503804 -9.593614 37.586441 17.192619 -3.314294 17.168060 23.052763 1.671400 -0.392749 0.219261 -0.023702 0.165436 -0.270484 -0.377512 +-3.787992 160.187195 -2.410276 -3.944030 -38.643448 -9.156026 17.917011 -0.480206 -35.352627 -23.084803 10.693775 50.365582 -0.760832 0.039299 -0.373129 0.930771 0.653277 0.982446 6.154510 8.923654 -5.498709 3.367103 0.524818 44.249519 -0.627968 0.231209 -0.041062 0.334425 -0.446824 0.285819 -0.361312 5.279794 18.052982 1.663221 5.347169 9.327538 2.453972 6.220126 7.678231 -1.024856 12.227106 18.894524 -4.340035 12.329124 -27.314934 -23.006369 -19.134781 -8.570673 -49.065998 -22.984152 -1.486997 -3.958987 -32.332741 -3.495274 0.298242 -0.329179 1.019500 -0.367896 0.631365 0.065429 22.184492 15.048985 -9.186317 39.179314 18.316572 -3.430213 18.396908 26.191151 2.081500 -0.408578 0.261018 -0.029149 0.172290 -0.263264 -0.421354 +-3.014895 161.107498 -2.893906 -2.329648 -40.833126 -10.386823 18.169176 -1.266523 -34.731030 -25.180538 12.671412 53.777958 -0.806785 0.034349 -0.425188 0.951582 0.682212 1.029198 4.770388 8.366419 -5.484551 1.306127 1.101586 43.291843 -0.648813 0.245138 -0.060089 0.351240 -0.496251 0.298748 -1.128718 5.329763 18.030581 1.481508 5.127775 9.848531 2.584974 6.069211 8.565516 -0.546830 12.558703 20.621790 -5.885605 13.296539 -29.129614 -23.385605 -22.317192 -8.452600 -48.575809 -25.492346 -1.046355 -4.139489 -35.633602 -3.682168 0.286223 -0.359278 1.054532 -0.379544 0.669189 0.027126 22.967888 17.741011 -9.044477 39.877590 20.014585 -3.284785 20.479877 28.782412 2.791781 -0.426642 0.292744 -0.023073 0.168148 -0.250560 -0.454105 +-2.376011 161.956879 -3.285404 -1.326498 -43.010807 -10.709376 18.430225 -1.895622 -34.283737 -26.259142 14.162395 56.798191 -0.819272 0.039760 -0.437249 0.966845 0.698361 1.059230 4.112092 7.786780 -5.768792 -0.637084 1.620485 41.965118 -0.659374 0.240475 -0.067026 0.361953 -0.509176 0.310738 -1.792899 5.393530 17.076418 1.463870 4.935923 10.288431 2.979496 5.876730 9.544247 -0.114180 12.799664 21.578428 -6.735719 14.133934 -29.321909 -22.626268 -25.042858 -8.110881 -48.956902 -28.113268 -0.340618 -3.898420 -39.556431 -4.051702 0.272360 -0.363527 1.058355 -0.371989 0.683263 0.019641 23.371780 20.147465 -8.846654 40.778412 21.673870 -2.934761 22.840670 31.196224 3.653859 -0.435051 0.290253 -0.019083 0.163445 -0.255501 -0.467088 +-1.622311 162.840790 -3.643581 -0.216050 -45.438114 -11.067581 18.018665 -2.597883 -33.349453 -26.379347 15.012912 59.110443 -0.835889 0.056691 -0.438466 0.969832 0.701991 1.067346 3.373744 7.170098 -5.937366 -2.400672 2.029167 40.177803 -0.666412 0.220319 -0.066142 0.371481 -0.500474 0.322498 -2.171825 5.444689 15.962061 1.283122 4.864514 10.808869 3.004338 5.795840 10.635302 0.692456 13.137923 22.173567 -7.396810 15.286156 -29.202721 -21.606020 -27.714966 -7.596881 -48.126549 -30.798569 0.248973 -3.130774 -45.408188 -4.650240 0.251227 -0.364526 1.062479 -0.351314 0.686477 0.026679 23.310848 22.688040 -8.672698 42.126072 23.556051 -2.417055 24.519754 33.130379 4.331645 -0.453022 0.280190 -0.029984 0.164061 -0.257531 -0.477192 +-0.852601 163.804398 -3.949569 0.345234 -47.872005 -10.937167 17.421329 -3.125296 -32.033611 -25.642794 15.282559 61.087753 -0.837751 0.067096 -0.437068 0.974866 0.701410 1.089191 3.166177 6.576193 -5.947394 -4.319799 2.479144 37.531116 -0.657222 0.196616 -0.065618 0.376822 -0.502651 0.327464 -1.956878 5.400740 14.711784 1.194172 4.918184 11.425623 2.904609 5.784266 11.959918 1.117989 13.210009 21.947445 -8.610518 16.099981 -28.826668 -20.874163 -29.544418 -7.399006 -46.854317 -34.086674 1.400307 -2.687394 -50.646118 -4.816702 0.230056 -0.344587 1.039803 -0.328243 0.672071 0.022215 23.148514 24.658007 -9.095463 43.398216 26.029205 -1.486876 26.502352 34.626743 5.208508 -0.460241 0.250342 -0.029836 0.146204 -0.265386 -0.490343 +-0.093514 164.650482 -4.151788 0.539706 -50.054752 -9.855972 16.460606 -3.308074 -30.890961 -23.812643 14.871906 62.651970 -0.886891 0.138802 -0.433379 0.949382 0.664410 1.087481 2.945152 6.139464 -6.565036 -5.846557 2.695843 34.269836 -0.633040 0.144105 -0.075635 0.393932 -0.459723 0.330813 -1.115814 5.348762 11.864999 0.971613 4.946169 12.265228 2.660460 5.698934 14.396877 1.647901 13.167585 20.787241 -9.799139 16.669756 -28.166208 -18.044188 -30.541647 -7.698162 -46.300476 -37.622993 3.030749 -0.091714 -55.815071 -6.255778 0.165026 -0.352996 1.020585 -0.274671 0.629202 0.013001 21.673033 26.092312 -10.106341 45.357559 29.047106 -0.123314 27.783638 36.686089 6.012128 -0.495624 0.225790 -0.074628 0.160639 -0.241234 -0.510553 +0.525571 165.410446 -4.278963 0.180768 -51.755867 -8.524004 15.233724 -3.320123 -29.348419 -20.762964 13.701805 64.384651 -0.922192 0.206464 -0.415517 0.926679 0.639159 1.071826 3.150133 5.716417 -6.779891 -7.098650 2.763778 30.621151 -0.603276 0.075717 -0.060993 0.411713 -0.396930 0.338897 -0.248446 5.369173 8.997069 0.924284 4.954095 13.070316 2.593556 5.510279 16.858480 2.638926 13.059347 19.503614 -11.000761 17.470186 -27.056196 -14.042281 -30.683777 -8.197059 -46.377510 -41.534576 5.418648 4.556721 -60.567123 -9.093345 0.088124 -0.352478 0.981064 -0.198035 0.577001 0.023669 18.646257 26.848083 -11.631490 47.801434 32.582085 2.096767 29.180138 39.328918 7.140772 -0.542986 0.187719 -0.111771 0.175284 -0.226365 -0.519731 +1.117691 166.077911 -4.363993 -0.469235 -53.071259 -6.989410 13.761934 -3.153218 -27.470335 -17.129795 11.876129 65.177322 -0.911274 0.253083 -0.387259 0.916468 0.637943 1.050353 3.287821 5.362221 -6.796794 -7.664825 2.653923 27.192055 -0.570571 -0.010453 -0.049478 0.430593 -0.333544 0.360278 0.547004 5.408997 6.066652 1.050094 4.879773 13.713514 2.748568 5.061334 19.246479 3.534879 12.996459 18.051666 -11.654007 18.193640 -24.736010 -10.033770 -30.943958 -8.249392 -46.187489 -45.406017 7.950586 13.101711 -64.287277 -14.734966 0.016811 -0.296766 0.895948 -0.113391 0.520277 0.046639 15.871672 27.807774 -13.028104 49.537968 36.451687 4.874414 29.105736 41.918633 7.908497 -0.569591 0.107595 -0.112899 0.156810 -0.231375 -0.504004 +1.638704 166.623810 -4.484794 -0.959668 -53.882881 -5.552499 12.213819 -2.928858 -25.481783 -13.724709 9.862381 64.569145 -0.916958 0.324771 -0.356828 0.901538 0.634897 1.014652 3.142250 5.076992 -6.864185 -7.635260 2.412869 24.364468 -0.535911 -0.107094 -0.038566 0.459450 -0.241564 0.385661 1.130234 5.566401 3.170544 1.058378 4.840948 14.234748 2.809404 4.619390 21.631672 4.854272 13.062694 16.165592 -11.430703 18.843885 -22.495291 -5.166532 -30.817669 -8.758216 -46.752029 -49.712818 11.130754 25.075491 -65.071457 -22.712080 -0.075701 -0.247868 0.810599 -0.014457 0.453432 0.074521 12.475660 27.929701 -14.499917 51.519993 40.565510 8.342980 28.173979 45.857697 8.624625 -0.613121 0.031345 -0.127145 0.157953 -0.223307 -0.484167 +2.082988 167.039734 -4.628028 -1.173458 -54.036171 -4.447215 10.211468 -2.619926 -23.342306 -9.943294 7.504820 62.743015 -0.924339 0.395978 -0.316326 0.881915 0.642009 0.967881 2.867887 4.733041 -6.549827 -7.494579 2.181579 21.506014 -0.487309 -0.203339 -0.012636 0.501230 -0.130522 0.391574 1.392416 5.757218 0.467651 1.095656 4.768246 14.747674 2.965233 4.081998 24.094690 6.116565 13.032990 13.736625 -11.123012 19.097061 -20.254526 -0.352057 -30.210875 -9.411083 -46.832886 -54.058926 14.280040 37.173328 -63.409958 -30.079004 -0.177564 -0.218721 0.706202 0.097012 0.371822 0.109367 8.951498 27.810001 -15.535131 52.720387 45.184765 12.208359 22.750887 51.308090 7.374693 -0.663522 -0.039998 -0.151357 0.185855 -0.217286 -0.455523 +2.477910 167.304169 -4.694244 -1.207814 -53.699409 -3.406551 8.081964 -2.286350 -21.152769 -6.200592 5.203951 59.949688 -0.955523 0.495282 -0.271555 0.843363 0.618496 0.903873 2.424139 4.396047 -6.316773 -7.264716 1.935531 18.867821 -0.429256 -0.303297 0.012807 0.538343 0.002920 0.389868 1.364346 5.850482 -1.809862 1.178314 4.569081 14.985292 3.229892 3.523268 26.012440 6.973453 13.034779 11.015517 -10.673641 18.890011 -17.991638 3.776378 -28.534470 -9.806660 -47.814186 -58.275261 18.333158 47.887138 -61.011257 -35.994171 -0.289825 -0.209766 0.615003 0.212634 0.271673 0.140565 5.595275 26.873817 -16.162714 53.966068 49.995464 16.869511 13.628213 56.403671 3.585502 -0.725472 -0.098484 -0.201196 0.234147 -0.190314 -0.431647 +2.820475 167.423233 -4.687130 -1.731077 -53.389935 -2.209347 6.634295 -1.896335 -18.054928 -3.255263 3.346537 55.452576 -0.952764 0.580243 -0.230159 0.815210 0.607671 0.854501 2.321575 4.141191 -6.075737 -7.021814 1.742799 16.766270 -0.387872 -0.405575 0.024409 0.563725 0.112042 0.420521 1.612369 5.624309 -3.722794 1.276926 4.217242 15.137303 3.405852 2.949592 27.700352 7.629457 13.192994 8.730769 -10.962315 18.834248 -16.023176 6.578010 -26.134007 -9.956131 -48.455280 -62.111660 22.208340 55.361801 -57.581387 -38.757103 -0.396962 -0.167755 0.511097 0.321970 0.198023 0.169169 1.730402 25.434643 -16.466232 55.496189 55.334835 22.541298 -1.647177 60.404892 -4.847795 -0.765889 -0.171096 -0.211955 0.246358 -0.173759 -0.397485 +3.236367 167.411102 -4.672798 -2.256626 -52.909401 -1.212368 5.671906 -1.638146 -14.262360 -1.447922 2.107789 49.348183 -0.978126 0.660523 -0.218000 0.799541 0.601928 0.820214 2.373644 3.955387 -5.971650 -6.946975 1.612850 14.967504 -0.349134 -0.499687 0.018829 0.599420 0.192782 0.444575 1.776198 5.200869 -5.293624 1.343317 3.707423 15.260667 3.587335 2.341715 29.165981 7.954035 13.782743 6.735585 -10.919444 18.844135 -14.506988 9.238744 -24.303852 -9.831750 -47.349991 -65.011215 24.013906 62.591080 -52.897907 -40.513161 -0.491916 -0.122490 0.430504 0.411046 0.127134 0.175550 -1.964227 24.323439 -16.556448 55.734577 60.556126 27.633781 -19.343679 61.188793 -15.520700 -0.812115 -0.239581 -0.227336 0.247925 -0.148344 -0.384183 +3.662779 167.220795 -4.494472 -3.290248 -51.874744 0.218740 5.343167 -1.660143 -10.303707 -0.142126 1.052480 42.519733 -0.991421 0.721342 -0.201778 0.784318 0.588885 0.784218 2.616390 3.734074 -5.848286 -6.675889 1.426349 13.244569 -0.319236 -0.567511 0.019174 0.619432 0.260619 0.460455 2.390364 4.560790 -6.592905 1.469314 3.057482 15.107872 3.782181 1.669818 29.797119 7.957111 14.290574 5.547637 -10.542043 18.747747 -13.086506 11.997070 -22.997919 -9.590491 -46.092548 -66.755424 24.712898 66.278648 -48.393105 -39.981495 -0.555400 -0.086110 0.373948 0.473903 0.070515 0.188289 -5.343866 23.352652 -16.281370 55.876293 64.525116 31.861109 -32.759510 59.920414 -23.383692 -0.843582 -0.289677 -0.241344 0.251568 -0.128917 -0.369590 +4.067396 166.960800 -4.361309 -3.971669 -49.764397 1.110065 4.906065 -1.693422 -5.860209 1.581229 -0.038105 34.556232 -1.004003 0.768534 -0.182840 0.781436 0.604544 0.758929 2.851780 3.597019 -5.586694 -6.457114 1.328944 12.091945 -0.300859 -0.630621 0.023102 0.653213 0.322256 0.475104 2.864322 3.852616 -7.794526 1.681827 2.299321 15.162473 4.052951 0.829506 30.627407 8.214466 13.888855 4.378451 -10.685382 18.297972 -12.226327 13.817783 -21.144844 -9.592664 -44.480293 -68.980453 25.606787 68.248352 -44.624580 -38.483128 -0.613867 -0.067973 0.316851 0.535738 0.032209 0.209655 -8.763444 21.954578 -16.415827 55.347401 67.717171 34.784950 -42.139133 57.252598 -28.182941 -0.875570 -0.334535 -0.250543 0.269055 -0.124705 -0.348265 +4.636602 166.587784 -4.223289 -5.266114 -47.395664 2.447992 5.499413 -1.687430 -1.929722 2.888417 -0.734935 26.990812 -1.021686 0.821962 -0.172238 0.789213 0.629818 0.740743 3.344638 3.586419 -5.642381 -5.905100 1.213343 11.412690 -0.281618 -0.706338 0.022509 0.694830 0.380198 0.499937 4.427049 3.121125 -8.798155 1.844641 1.628747 15.129389 3.878113 0.099112 31.315825 8.514285 13.229555 3.092165 -10.868461 17.653017 -11.290122 15.057023 -19.230263 -10.093170 -43.471043 -71.199425 26.536755 67.296043 -40.778664 -35.348030 -0.682056 -0.033064 0.249698 0.604689 -0.010018 0.226973 -11.940026 19.959269 -16.712763 55.291599 69.953644 37.190300 -48.890438 54.577919 -31.261019 -0.915902 -0.393446 -0.250274 0.275328 -0.119153 -0.329358 +5.258411 166.205856 -4.252935 -6.431387 -45.600491 3.536648 6.545576 -1.448728 1.483114 3.318952 -0.881176 20.197004 -1.053736 0.890126 -0.173544 0.781340 0.633095 0.723494 3.656317 3.838358 -6.202827 -5.067804 1.155454 11.784363 -0.254432 -0.782688 0.007056 0.731455 0.436476 0.522428 5.698939 2.602547 -9.497391 2.025046 1.099972 15.120334 3.744249 -0.509495 31.891428 8.952615 12.836171 1.812229 -10.962914 17.272177 -10.331335 16.333370 -17.039124 -10.781209 -41.696667 -73.221825 27.045338 66.291214 -38.236027 -33.038532 -0.764934 -0.000685 0.185126 0.675182 -0.062096 0.221397 -14.918709 17.772314 -17.137106 55.093426 71.923866 39.101379 -53.966152 51.682739 -33.063679 -0.957524 -0.446228 -0.260021 0.277547 -0.093860 -0.323296 +5.940244 165.971054 -4.369731 -6.941912 -43.825195 4.096900 7.384290 -1.291045 3.835479 3.335922 -0.885262 14.936798 -1.070965 0.941834 -0.168678 0.763326 0.608673 0.717506 3.259534 4.009666 -6.897241 -3.953108 0.989223 12.205113 -0.233730 -0.836430 0.000128 0.737230 0.469353 0.544554 6.251256 1.813306 -9.726709 2.104901 0.305617 15.195408 3.689377 -1.289448 32.115398 9.139599 12.732682 0.892009 -11.632235 17.393703 -9.632825 15.845903 -15.424744 -10.881114 -35.908157 -73.655998 23.703051 66.948273 -38.058380 -32.749851 -0.824684 0.018171 0.148919 0.726738 -0.097002 0.212133 -17.233620 16.339539 -17.520828 53.774715 73.631668 39.765720 -57.063835 49.789803 -33.938019 -0.982580 -0.481283 -0.269793 0.264861 -0.076571 -0.329458 +6.565021 165.825562 -4.427698 -6.960798 -42.819855 4.254874 7.894347 -1.021454 5.713054 2.831353 -0.751921 10.657269 -1.093285 0.974740 -0.174080 0.777262 0.629688 0.723006 2.666457 3.954504 -7.205228 -3.366493 0.862160 11.838869 -0.224978 -0.876358 -0.012163 0.769780 0.490264 0.557184 6.221876 1.351170 -9.992504 2.197429 -0.202390 15.383808 3.802520 -1.891260 32.659401 9.215397 12.493174 -0.003385 -11.743753 17.016123 -9.390532 15.405009 -13.737053 -11.154136 -33.295506 -74.476639 22.625280 67.601135 -37.414944 -32.410606 -0.863725 0.039984 0.114554 0.759402 -0.119916 0.210162 -18.051785 15.042164 -18.000347 54.186207 75.059509 41.497402 -58.337666 48.361847 -33.912193 -1.007614 -0.516090 -0.269926 0.266493 -0.070930 -0.328159 +7.082328 165.710281 -4.391743 -6.624625 -42.166958 4.360177 8.257011 -0.711776 6.669240 1.727280 -0.532054 7.685227 -1.131355 1.010287 -0.180984 0.779319 0.629125 0.711936 2.132733 3.850815 -7.505539 -3.429740 0.796503 11.226822 -0.221321 -0.889229 -0.010573 0.786140 0.518447 0.559677 5.580051 0.903072 -10.195440 2.176279 -0.735132 15.361766 4.049510 -2.390837 32.779556 9.361556 12.301540 -0.254739 -11.477374 16.561384 -9.548285 15.325025 -12.597578 -11.071490 -34.168427 -74.630302 23.741774 69.028702 -37.350571 -33.110500 -0.888781 0.022408 0.122476 0.774981 -0.135194 0.211680 -18.965796 14.503507 -18.262161 56.813812 75.778625 44.233711 -58.781261 47.249149 -33.698475 -1.039101 -0.507392 -0.288164 0.294950 -0.049528 -0.330990 +7.768935 165.863647 -4.307055 -6.150938 -41.920200 4.456381 8.277065 -0.478351 6.700149 0.481968 -0.337764 6.213029 -1.131555 1.012600 -0.176054 0.794275 0.646771 0.697315 1.232634 3.713801 -7.990142 -3.224606 0.705244 10.715714 -0.222676 -0.893515 -0.007201 0.799883 0.533038 0.558755 5.059777 0.589834 -10.146471 2.153121 -1.048556 15.340273 4.230238 -2.765184 32.699535 9.375555 11.903297 -0.494516 -10.807954 15.824446 -9.379675 14.942574 -12.093244 -11.114971 -33.925117 -74.529976 23.870192 69.151634 -38.333408 -33.687523 -0.879296 0.033744 0.118045 0.771651 -0.141821 0.229311 -18.729731 14.625992 -18.368483 57.384201 76.129707 45.143669 -58.358936 47.403790 -33.485218 -1.044106 -0.516080 -0.284995 0.306432 -0.052185 -0.316006 +8.548353 166.192734 -4.173178 -5.664074 -42.278553 4.492303 7.746435 -0.331188 6.350278 -0.283085 -0.236999 5.495908 -1.113932 0.962798 -0.181273 0.814125 0.668730 0.716813 0.357089 3.470462 -8.216311 -3.202318 0.606696 9.835293 -0.241930 -0.852172 -0.004854 0.794553 0.488132 0.543959 5.107885 0.546471 -9.911638 2.062612 -1.049525 15.409582 3.960825 -2.791318 32.515560 9.518795 11.310336 -0.036939 -10.851774 15.532160 -10.103300 13.933469 -12.918200 -11.285889 -32.305183 -74.560608 22.812469 67.706062 -39.827080 -33.549690 -0.824694 0.024096 0.146381 0.726684 -0.107127 0.232896 -18.389204 15.134132 -18.385303 57.119015 75.494225 44.306969 -57.490253 48.662090 -33.653316 -1.019513 -0.497376 -0.270958 0.301726 -0.076522 -0.317127 +9.359624 166.420334 -4.018769 -4.980245 -42.585957 4.528403 6.748477 -0.345814 5.401388 -0.612134 -0.229382 5.507876 -1.061504 0.872676 -0.184004 0.860353 0.734717 0.752643 -0.608260 3.066938 -8.290551 -3.396968 0.495681 8.386323 -0.279327 -0.794633 0.002359 0.793846 0.420124 0.535340 4.990063 0.232380 -9.595216 1.811546 -1.217914 15.452978 3.632563 -3.002324 32.208752 9.137323 11.172256 0.456108 -11.087883 15.433730 -11.303026 13.811772 -13.750783 -11.015731 -31.568436 -72.803108 21.177378 68.638733 -41.581448 -35.130375 -0.744773 0.028673 0.165079 0.666047 -0.042311 0.250341 -18.155415 15.966803 -18.517729 58.780121 74.756401 45.004471 -56.288155 50.593178 -34.050549 -0.974973 -0.482421 -0.223742 0.287238 -0.129294 -0.301964 +10.093596 166.565506 -3.750374 -4.851494 -42.918503 4.991039 6.128959 -0.414692 4.447311 -0.730564 -0.226466 5.675186 -1.012589 0.837694 -0.165143 0.824244 0.697142 0.730515 -1.125341 2.800078 -8.398616 -3.701256 0.393578 7.181369 -0.277407 -0.768437 0.018475 0.743861 0.407759 0.529132 5.622285 0.062739 -9.338334 1.646016 -1.260815 15.273209 3.222669 -2.966510 31.482546 8.900829 11.097034 1.196562 -11.634215 15.757787 -11.096888 12.574641 -14.611901 -10.659853 -32.807045 -71.467697 21.783295 67.862419 -44.899872 -36.592525 -0.718117 0.020984 0.170223 0.648878 -0.029075 0.251782 -17.496250 16.396448 -18.462267 60.482620 73.606079 45.763588 -53.659897 53.374538 -33.807327 -0.938385 -0.459205 -0.212416 0.270893 -0.132420 -0.291465 +10.794363 166.642181 -3.541695 -4.596417 -43.395435 5.175663 5.457792 -0.496397 3.517495 -1.078575 -0.196427 6.311500 -0.974749 0.780668 -0.163388 0.820627 0.689769 0.744531 -1.642789 2.546052 -8.427622 -4.049558 0.309586 6.042753 -0.299952 -0.703966 0.026589 0.705866 0.356667 0.517156 6.046828 0.041803 -8.905970 1.527175 -1.197564 15.290967 2.845442 -2.827752 30.899927 8.216281 11.102348 2.039486 -12.221486 15.800844 -12.111193 11.664289 -16.094206 -10.256409 -33.386311 -69.210411 20.947456 67.827560 -48.146358 -38.698151 -0.657422 -0.008357 0.211921 0.593311 0.020017 0.249210 -16.078112 17.573017 -18.489208 60.644829 72.001205 44.495499 -49.511589 56.666138 -32.676971 -0.895810 -0.410989 -0.194314 0.265356 -0.149073 -0.291383 +11.397287 166.650146 -3.314070 -4.500572 -44.459019 5.589544 4.845727 -0.572288 2.760034 -1.405391 -0.158790 6.873722 -0.938904 0.720062 -0.169756 0.805515 0.658026 0.760777 -1.968096 2.420747 -8.855069 -4.587792 0.254511 5.263743 -0.316734 -0.631423 0.030523 0.650070 0.290673 0.501396 6.165148 0.031671 -8.372957 1.463254 -1.149219 15.194142 2.717439 -2.623543 29.967518 7.220787 11.423241 3.161364 -13.030349 16.043474 -13.118226 11.026108 -17.601217 -9.535933 -35.553368 -65.519913 20.492027 68.550468 -53.134136 -42.831207 -0.589981 -0.037744 0.265702 0.527175 0.065515 0.228966 -14.804384 19.207966 -18.320457 60.737556 69.818146 42.683041 -44.328365 60.766979 -31.053774 -0.846057 -0.354925 -0.178190 0.244977 -0.155759 -0.303762 +11.983794 166.418793 -3.056225 -4.421982 -45.209560 6.166308 4.473031 -0.678857 1.548273 -1.955051 -0.065309 7.805702 -0.916213 0.691242 -0.171022 0.774650 0.596437 0.775521 -2.267616 2.453084 -9.706220 -4.968254 0.199363 4.946353 -0.326653 -0.575739 0.033555 0.585762 0.241905 0.495994 6.181069 0.107803 -7.738973 1.522928 -1.077061 14.888722 2.838022 -2.415406 28.691483 6.613058 11.705554 4.125902 -14.210561 16.619797 -13.880965 9.641332 -18.575409 -8.817298 -38.789005 -62.281868 21.170906 69.500053 -59.297649 -48.146931 -0.548917 -0.071280 0.320779 0.480842 0.097408 0.203452 -13.292752 20.391663 -18.324484 62.099762 67.012436 41.241535 -34.907124 64.508705 -26.134050 -0.808710 -0.302179 -0.176434 0.223469 -0.149361 -0.326458 +12.532157 166.130295 -2.841735 -4.377361 -45.672707 6.526807 4.219688 -0.768439 0.590855 -2.410159 0.026082 8.730102 -0.891450 0.652645 -0.179821 0.748705 0.550470 0.795075 -2.341130 2.569870 -10.539226 -5.786746 0.226897 5.222316 -0.341068 -0.518091 0.030929 0.528253 0.186050 0.491540 5.754165 0.033900 -6.946912 1.606812 -1.198418 14.751355 3.033429 -2.419646 27.453598 6.516326 12.231105 5.118654 -15.293788 17.574949 -14.951193 7.721933 -19.823172 -8.838898 -41.099621 -58.811192 20.892488 65.099014 -67.298988 -50.746021 -0.508307 -0.101154 0.372155 0.432807 0.137275 0.173980 -10.801096 21.643499 -18.480904 63.152889 63.530182 38.564259 -18.909105 67.012184 -15.848239 -0.768460 -0.249448 -0.168292 0.199135 -0.145352 -0.347893 +13.101308 165.769394 -2.659800 -4.453258 -45.942970 6.991978 4.415339 -0.856235 -0.659217 -3.494602 0.243570 10.097691 -0.873301 0.613409 -0.196407 0.726417 0.503780 0.813032 -2.406764 2.942341 -12.055311 -6.285938 0.339976 6.883733 -0.351333 -0.469104 0.020538 0.474887 0.125047 0.486048 5.265535 -0.026331 -6.048739 1.705586 -1.306025 14.418541 3.359947 -2.434633 25.993261 6.661047 12.708971 6.387573 -15.911964 18.513685 -15.605532 5.632679 -21.029112 -8.941526 -44.075436 -55.430077 20.366735 51.416321 -73.424759 -44.198700 -0.463724 -0.115237 0.424151 0.382492 0.168375 0.138209 -7.638421 22.793562 -18.287312 64.739471 59.724045 35.616867 -1.782592 66.147781 -4.215763 -0.729727 -0.210127 -0.160917 0.160747 -0.139511 -0.374400 +13.696461 165.348923 -2.397422 -4.521633 -45.725830 7.388296 4.483037 -1.057476 -2.085336 -4.176654 0.403314 11.732553 -0.867445 0.592837 -0.208538 0.691294 0.435699 0.832543 -2.533491 3.337996 -13.621043 -6.774370 0.482145 8.947886 -0.359912 -0.411738 0.010253 0.416349 0.072407 0.475403 4.871581 -0.246062 -5.124758 1.836820 -1.582595 14.014394 3.768221 -2.510570 24.460619 6.810654 12.864364 7.930159 -16.746666 19.227747 -16.260281 2.965408 -22.061213 -8.680306 -48.570004 -51.732334 19.659237 27.193115 -76.521805 -26.792507 -0.426237 -0.157376 0.488585 0.332779 0.198937 0.099880 -4.904137 23.625067 -17.895819 66.220039 55.488194 31.908815 12.223148 63.248169 4.490403 -0.693902 -0.152226 -0.170990 0.141553 -0.125085 -0.406830 +14.305160 164.889618 -2.036281 -4.495141 -44.764992 7.658629 4.488468 -1.379789 -3.798103 -4.596609 0.525367 14.010952 -0.831222 0.531814 -0.217955 0.682929 0.409611 0.856343 -3.078216 3.660815 -15.151029 -6.676285 0.579731 11.220285 -0.382651 -0.351531 0.003074 0.365460 -0.001633 0.469220 4.757620 -0.595176 -3.978148 2.049545 -1.920521 13.467404 4.118104 -2.689900 22.567736 6.930366 12.380527 9.402244 -17.516674 19.528595 -16.929794 -0.012258 -22.851067 -8.408978 -52.526741 -48.008633 18.469044 -7.590754 -76.449936 0.444432 -0.357465 -0.169757 0.540488 0.267607 0.248686 0.079328 -2.011261 23.782238 -17.223866 66.824760 50.381554 26.817139 24.083410 59.091946 10.577999 -0.642315 -0.114108 -0.150107 0.104644 -0.138778 -0.421500 +14.886238 164.387512 -1.763201 -4.183511 -43.525417 7.595090 4.401174 -1.802899 -5.546171 -5.170064 0.673737 16.674118 -0.789561 0.464006 -0.230393 0.687754 0.401881 0.869909 -3.802325 3.991675 -16.874559 -6.649596 0.738451 14.440981 -0.405543 -0.287675 0.003462 0.321853 -0.069122 0.463111 4.463219 -0.795635 -2.599943 2.312649 -2.114779 12.826352 4.533935 -2.694463 20.484848 6.896309 11.852939 11.126021 -17.182184 19.496807 -17.269096 -2.752407 -23.620628 -7.963122 -55.815571 -44.499950 16.535870 -26.048658 -71.816406 13.034382 -0.282766 -0.171104 0.587890 0.199461 0.296775 0.068761 0.886948 23.275854 -16.631189 65.736572 45.030788 20.954069 33.301323 52.791771 13.676422 -0.595075 -0.076559 -0.119057 0.071439 -0.153751 -0.425724 +15.488286 163.950043 -1.434724 -3.952111 -42.859989 7.177482 4.217796 -2.165020 -6.750565 -5.872120 0.866282 19.222778 -0.753862 0.359087 -0.255454 0.728589 0.453576 0.912722 -4.427598 4.334466 -18.402655 -6.350749 0.890851 17.821808 -0.450297 -0.204934 -0.004609 0.309768 -0.171708 0.445258 4.493441 -0.795755 -0.803910 2.651134 -2.057292 12.403310 4.741822 -2.486247 18.691319 6.296203 11.196002 12.656752 -17.367382 18.993441 -18.930382 -5.976078 -23.964989 -7.841374 -57.104824 -41.319092 14.021559 -37.124447 -66.126198 18.605885 -0.178738 -0.184126 0.643282 0.106015 0.376059 0.060735 3.962199 22.460783 -16.232822 64.023254 40.227348 15.564224 37.379642 45.102654 12.936171 -0.542611 -0.035657 -0.076470 0.050171 -0.193948 -0.428257 +16.194368 163.490112 -1.175920 -3.624690 -41.216553 6.610679 3.951601 -2.668632 -8.204784 -6.136802 0.959292 21.872089 -0.759114 0.302059 -0.286162 0.749270 0.468503 0.947720 -5.367487 4.698485 -20.130106 -5.477237 0.915694 21.989759 -0.486524 -0.122276 -0.012147 0.293463 -0.247265 0.428272 4.711639 -1.034817 1.278527 2.975082 -2.259655 11.942585 4.859623 -2.419474 16.898903 5.903854 10.808914 13.883596 -17.309713 18.336639 -21.036810 -9.521943 -23.761175 -7.978493 -58.523380 -37.839813 11.367652 -43.421028 -58.994205 19.311821 -0.106374 -0.233111 0.721655 0.024953 0.440136 0.040245 6.406395 20.762794 -15.469452 62.367306 35.865894 10.767262 36.992363 39.701912 10.647602 -0.516289 0.035127 -0.064840 0.058249 -0.200613 -0.446041 +17.006392 162.912994 -0.907528 -3.444241 -39.284695 6.231213 3.829916 -3.293027 -9.879519 -6.495755 1.058800 24.725649 -0.754982 0.269786 -0.300205 0.761945 0.459902 0.973735 -6.257490 5.073783 -22.343895 -4.398115 0.820258 26.873705 -0.512405 -0.067296 -0.024008 0.270396 -0.300231 0.423904 5.269894 -1.382351 3.423795 3.371609 -2.480225 11.244256 5.033272 -2.412079 14.893768 5.392836 10.416062 14.909293 -16.869602 17.628906 -21.772068 -13.232208 -23.038097 -7.981762 -59.119865 -34.393570 8.746590 -44.601337 -51.713383 16.603939 -0.047086 -0.256108 0.782542 -0.037219 0.482518 0.027068 8.527350 18.771461 -14.726421 60.229092 31.975515 6.909196 34.578453 34.544041 8.062260 -0.488524 0.075146 -0.055864 0.049817 -0.207906 -0.458777 +17.902313 162.423233 -0.567994 -3.033178 -37.391220 5.512206 3.491205 -3.902393 -11.113439 -7.162653 1.214173 27.127600 -0.736799 0.192764 -0.323251 0.797155 0.504792 0.995987 -7.372683 5.268885 -24.478722 -3.137982 0.572447 31.934090 -0.546745 0.001534 -0.033947 0.269889 -0.373712 0.403724 5.922967 -1.927678 5.699970 3.633477 -2.782386 10.548667 4.868347 -2.539112 13.010868 4.513954 10.171990 16.265821 -16.226355 16.539724 -22.917603 -16.698685 -22.427568 -7.556205 -58.835835 -30.670757 5.690525 -42.173485 -45.785538 12.677499 0.040073 -0.271519 0.830115 -0.117784 0.540528 0.023204 9.808117 17.575054 -14.134135 58.379482 28.969801 4.067314 29.634253 29.714815 5.257321 -0.451411 0.113266 -0.026746 0.047174 -0.232385 -0.454731 +18.721773 161.868317 -0.226671 -2.605163 -34.879635 4.914313 3.046903 -4.656746 -12.478355 -7.420127 1.229704 29.546038 -0.711239 0.147343 -0.340485 0.819170 0.524886 0.997773 -8.520115 5.253216 -26.768766 -1.726469 0.054987 37.355255 -0.565195 0.036468 -0.038888 0.254604 -0.418922 0.410910 6.409304 -2.403704 7.782810 4.125042 -3.133983 9.743608 5.192228 -2.774892 11.148511 3.403871 9.677570 16.816675 -15.659340 15.222878 -23.277140 -19.632877 -21.240931 -7.260473 -58.621105 -27.510284 3.479827 -38.387852 -40.804810 9.153694 0.092385 -0.254987 0.851352 -0.166824 0.572179 0.018582 11.254871 16.041977 -13.623103 55.768978 26.235464 1.782423 24.367012 25.221102 3.116332 -0.426772 0.129361 0.013673 0.023160 -0.238685 -0.443704 +19.430500 161.399658 0.177520 -2.288307 -32.851723 3.967691 2.703844 -5.153720 -12.850134 -7.953547 1.358947 31.270790 -0.698414 0.096963 -0.356549 0.842767 0.552246 1.014011 -9.148337 5.325193 -28.786930 -0.714273 -0.404600 42.586533 -0.586495 0.076122 -0.047146 0.252922 -0.472858 0.400619 6.646039 -2.618747 9.819848 4.734432 -3.355924 9.162924 5.695049 -2.914185 9.745563 2.512045 9.177427 17.574385 -15.744227 14.253150 -24.006432 -22.228968 -19.740435 -7.085320 -57.749424 -24.582052 1.439801 -33.931557 -37.110916 6.299410 0.149845 -0.256800 0.878182 -0.219157 0.608140 0.014143 11.863873 14.548391 -13.310349 53.104740 23.895857 0.100879 19.478428 20.854410 1.608147 -0.402387 0.146677 0.036676 0.013243 -0.255005 -0.442592 +20.126310 161.011841 0.608608 -2.327027 -31.099403 2.870206 2.381796 -5.580511 -12.723948 -7.934176 1.325979 32.989853 -0.682956 0.036722 -0.358770 0.881691 0.605609 1.028350 -9.303290 5.486425 -30.532761 0.284049 -0.945813 47.793709 -0.612889 0.124015 -0.041279 0.267501 -0.512159 0.376640 7.379470 -2.905293 12.060617 5.309377 -3.435803 8.629048 5.778666 -2.915177 8.375629 1.540879 9.073153 18.691069 -15.092113 13.284627 -24.736008 -24.357878 -18.819170 -7.070393 -56.475105 -22.000605 -0.157597 -28.633747 -33.075798 3.665793 0.219429 -0.273426 0.905945 -0.273052 0.647471 0.033284 12.367572 13.094316 -12.963645 50.282692 21.702820 -1.278263 14.900525 17.145065 0.587470 -0.380792 0.167063 0.053415 0.030504 -0.288669 -0.429528 +20.770863 160.438416 1.101381 -2.353167 -29.912111 2.007099 2.284309 -5.963962 -12.845187 -8.616246 1.596230 34.956253 -0.662806 0.018555 -0.351764 0.891663 0.608407 1.029204 -9.486059 5.699275 -32.877155 1.545682 -1.761310 53.238129 -0.618997 0.143367 -0.037511 0.258957 -0.522302 0.372144 8.280876 -3.290240 13.912273 5.570117 -3.449355 8.008027 5.474157 -2.846458 6.984489 0.930497 9.203594 19.336174 -14.435527 12.795671 -24.173891 -25.812794 -17.991150 -6.952791 -55.176247 -19.268736 -1.442510 -22.778328 -28.591728 1.386261 0.250855 -0.270604 0.914900 -0.295212 0.657831 0.044205 12.353775 11.632796 -12.436190 48.206047 19.478132 -2.272755 10.966945 13.694363 -0.035486 -0.363277 0.171000 0.063997 0.027674 -0.301951 -0.420339 +21.294569 160.090195 1.500493 -2.232178 -28.943707 0.841761 2.092714 -6.125780 -12.356762 -9.351002 1.912997 36.142456 -0.640044 0.001634 -0.345737 0.884866 0.605499 1.014645 -9.142975 6.126957 -34.794361 2.505933 -2.422399 58.017353 -0.620042 0.155452 -0.031153 0.244268 -0.522474 0.369844 8.508903 -3.401925 15.757234 5.904156 -3.489964 7.582520 5.495264 -2.837539 5.880509 0.753470 9.200855 19.965719 -14.059690 12.595991 -23.599268 -26.705629 -17.333450 -6.753673 -53.189896 -16.783232 -2.378613 -17.928053 -24.805099 0.007808 0.264654 -0.270058 0.912420 -0.303977 0.663224 0.049866 12.203951 10.515841 -11.840201 45.933983 17.428593 -3.132921 6.885266 10.672898 -0.437023 -0.349242 0.179733 0.075674 0.025631 -0.303132 -0.407394 +21.761662 159.815231 1.846341 -2.422344 -28.266836 -0.213680 2.384688 -6.169274 -11.725047 -10.250439 2.309789 37.179012 -0.627467 -0.005690 -0.338040 0.880146 0.605068 1.003250 -7.957209 6.755866 -36.335049 3.045662 -2.854320 61.451057 -0.617705 0.162732 -0.022512 0.238445 -0.515040 0.364330 8.803827 -3.590994 17.310053 6.248067 -3.532067 7.518818 5.570156 -2.840569 5.360534 0.445384 9.484275 20.050589 -13.868807 12.523541 -23.320898 -26.635658 -16.416365 -6.703548 -51.207039 -14.749820 -3.010349 -13.735137 -22.040749 -0.846930 0.269768 -0.274837 0.907647 -0.305382 0.662256 0.057052 11.624216 9.373830 -11.652646 43.596210 16.136440 -3.422815 3.609488 6.572214 -0.483453 -0.343426 0.186547 0.078617 0.033054 -0.304010 -0.397660 +22.320045 159.602982 2.181905 -2.126665 -27.469275 -1.782652 1.672478 -6.275284 -10.474031 -10.499490 2.396171 37.662640 -0.616860 -0.006900 -0.331650 0.866167 0.589540 0.986558 -6.976762 7.222673 -37.534420 3.723891 -3.344597 64.431877 -0.612402 0.168087 -0.021989 0.226652 -0.508166 0.360377 8.921383 -3.723997 18.985485 6.473265 -3.605864 7.640119 5.492465 -2.842886 5.004388 0.089600 9.669833 19.598154 -13.567339 12.329703 -23.242409 -25.870852 -15.735442 -6.393273 -48.581055 -12.837318 -3.493513 -10.766448 -20.503654 -1.264581 0.274474 -0.274216 0.906299 -0.309988 0.656384 0.056406 10.560067 8.299950 -10.998531 41.179836 14.527845 -3.715440 1.601997 4.220675 -0.388568 -0.334070 0.192388 0.077697 0.033594 -0.296959 -0.390957 +22.817327 159.465469 2.627353 -1.804563 -26.249460 -3.201733 1.116353 -6.438733 -9.327925 -11.025900 2.542485 38.049370 -0.599428 -0.002646 -0.316438 0.835593 0.562387 0.957062 -5.905601 7.413191 -38.674904 4.282881 -3.907092 66.977798 -0.596452 0.164580 -0.011475 0.207418 -0.485009 0.354803 8.979470 -4.108222 19.868603 6.578048 -3.876720 7.998407 5.497869 -3.045623 5.163596 0.085632 9.592309 18.688194 -13.585629 12.303694 -22.891462 -24.372791 -14.470881 -6.077526 -46.156403 -11.102891 -3.884527 -8.626238 -20.160210 -1.482221 0.262829 -0.275212 0.888902 -0.297416 0.638990 0.058311 8.526585 6.826194 -10.426429 39.768200 13.140475 -3.864841 0.097821 2.475348 -0.271209 -0.326864 0.197372 0.072966 0.037596 -0.285126 -0.379767 +23.303511 159.441849 3.254570 -1.679562 -25.187477 -4.569133 0.649584 -6.550749 -7.753493 -11.571621 2.644225 38.114288 -0.592167 0.009912 -0.298127 0.798294 0.518295 0.923493 -4.838246 7.452619 -39.132042 5.525730 -4.913861 67.985703 -0.577268 0.164719 0.003418 0.182496 -0.458970 0.342713 9.485059 -4.720131 20.373091 6.649680 -4.108967 8.430401 5.298298 -3.126735 5.475948 -0.369367 9.422765 17.998899 -13.810413 12.008615 -22.386843 -22.625044 -13.237387 -5.419275 -44.513908 -9.355874 -4.310347 -5.695478 -20.559711 -1.872646 0.254915 -0.291378 0.884264 -0.288041 0.616524 0.060628 5.596475 5.260001 -9.416073 38.917995 11.203755 -4.222831 -1.260209 1.850868 -0.182855 -0.323587 0.211240 0.056097 0.050000 -0.268056 -0.374050 +23.753942 159.401199 4.097319 -1.369306 -23.922575 -5.858514 -0.190446 -6.753480 -6.070091 -11.693400 2.536991 38.169586 -0.557929 0.006513 -0.270935 0.758018 0.478166 0.888748 -3.834711 7.193406 -38.980324 6.743868 -5.844870 67.739456 -0.553247 0.162813 0.015484 0.154361 -0.436303 0.327568 9.717808 -5.259652 20.589069 6.750438 -4.362711 8.765852 5.287862 -3.257515 5.691108 -0.638797 9.074290 16.874151 -13.886122 11.831811 -21.495819 -20.882048 -11.357428 -4.882822 -43.165756 -7.866342 -4.637118 -3.110697 -21.031797 -2.176273 0.252341 -0.285944 0.856838 -0.277880 0.590495 0.064064 2.777769 2.966269 -8.525648 37.869495 9.267689 -4.563337 -2.013566 1.638327 -0.114193 -0.302557 0.207712 0.050126 0.047238 -0.262352 -0.359875 +24.155758 159.387039 4.988288 -1.137395 -22.644058 -7.118357 -1.082106 -6.991593 -4.388474 -11.620667 2.315094 38.246460 -0.532350 0.017920 -0.240523 0.717990 0.433369 0.850833 -2.455350 6.906177 -38.022877 7.700905 -6.476032 66.191360 -0.531317 0.145299 0.032092 0.125703 -0.401843 0.325653 10.066670 -5.855882 20.784899 6.810965 -4.592896 9.141994 5.112583 -3.339120 5.909271 -0.483722 8.501899 15.326027 -14.102504 11.753889 -20.816017 -19.446186 -8.925656 -4.786551 -40.987446 -6.825021 -4.739176 -1.446009 -21.974779 -2.326929 0.237352 -0.275945 0.833284 -0.255058 0.561620 0.073958 0.253488 0.020324 -8.014013 36.687878 7.660507 -4.946275 -3.033747 1.922114 -0.093912 -0.294967 0.197615 0.040467 0.042407 -0.254279 -0.347579 +24.532532 159.492935 5.917622 -0.992732 -21.498859 -8.308155 -1.786819 -7.143144 -2.590635 -11.733212 2.163009 38.019768 -0.519135 0.048771 -0.215020 0.658370 0.361778 0.801031 -0.939768 6.676599 -36.849350 8.720360 -6.980497 63.667435 -0.492477 0.118114 0.043373 0.093474 -0.357561 0.316849 10.578384 -6.652063 20.656233 6.704151 -4.918283 9.545127 4.670345 -3.512694 6.248835 -0.448315 8.141277 13.875668 -14.265206 11.796906 -19.359398 -18.058964 -6.696718 -4.494890 -38.188206 -5.580476 -4.696716 -0.132041 -22.873039 -2.398786 0.206586 -0.267084 0.803434 -0.221894 0.511592 0.071381 -1.599140 -2.580541 -7.574400 34.919418 6.328996 -5.193836 -3.674332 2.580867 -0.105720 -0.292031 0.186116 0.016203 0.036365 -0.228462 -0.342831 +24.927576 159.545868 6.890191 -0.752424 -21.160147 -8.835504 -2.347541 -7.187489 -1.492656 -12.235509 2.264957 37.955757 -0.503667 0.091914 -0.188338 0.594650 0.287194 0.732210 0.554019 6.769032 -36.269821 9.701848 -7.221381 60.671131 -0.444765 0.072507 0.053694 0.061815 -0.293378 0.316138 11.295139 -7.161820 19.812965 6.449951 -4.914819 9.812726 4.141172 -3.409309 6.670527 -0.860671 8.030176 12.236598 -13.923474 11.581095 -17.174906 -16.058844 -4.218153 -4.399998 -36.286671 -4.918536 -4.433996 1.328168 -22.950310 -2.469236 0.162052 -0.240848 0.756723 -0.174511 0.445003 0.070721 -2.953982 -5.473418 -7.301291 32.532204 5.066698 -5.341957 -4.687658 3.692283 -0.162840 -0.294537 0.161614 -0.002857 0.025150 -0.192444 -0.327539 +25.360332 159.598389 7.853303 -0.353159 -20.863052 -9.418110 -3.112488 -7.195996 -0.515826 -13.038367 2.441380 37.689999 -0.484368 0.137768 -0.162546 0.551024 0.227875 0.671411 1.954434 6.754713 -35.222424 10.491559 -7.133895 56.510468 -0.412410 0.024120 0.058850 0.034093 -0.231056 0.333744 12.196878 -7.741111 18.814215 5.980557 -4.902232 10.083558 3.217443 -3.337538 7.153722 -1.428625 8.099026 10.856631 -13.217525 11.193367 -15.086435 -13.838768 -1.959012 -4.134923 -34.329456 -4.112505 -4.201969 3.111566 -23.294819 -2.650537 0.122979 -0.197190 0.715563 -0.132278 0.390529 0.080014 -4.444632 -7.952677 -6.987654 30.151312 4.023106 -5.303527 -5.204040 4.299339 -0.168203 -0.299081 0.128436 -0.007568 0.007292 -0.162349 -0.306927 +25.743879 159.766647 8.795291 0.199103 -20.652004 -10.102246 -3.920231 -7.163254 0.413223 -13.601293 2.549612 37.388134 -0.479359 0.173017 -0.138925 0.506357 0.178985 0.635593 3.299662 6.747756 -33.865356 10.635223 -6.604719 52.185276 -0.377644 -0.004087 0.068466 0.020086 -0.180425 0.324222 12.686689 -8.104976 17.675224 5.507959 -4.951399 10.508345 2.472768 -3.361330 7.983298 -1.240639 8.130158 10.004673 -13.038573 11.434473 -13.516266 -12.176252 -0.193220 -4.035262 -31.750566 -3.487419 -3.874991 4.649142 -23.136652 -2.723243 0.083046 -0.198047 0.680857 -0.091826 0.344003 0.080170 -5.660131 -9.944618 -6.737962 27.548159 3.247669 -5.119371 -5.767383 4.830956 -0.187820 -0.303476 0.116337 -0.032524 0.015164 -0.142871 -0.300761 +26.125280 160.239395 9.664731 0.776359 -20.831135 -11.147813 -4.575734 -6.881484 1.836203 -14.331759 2.726639 36.564987 -0.466982 0.169822 -0.129164 0.507544 0.193566 0.644823 4.656156 6.844425 -31.854317 10.507524 -5.794252 47.216835 -0.376880 -0.006475 0.070464 0.026580 -0.176622 0.324213 12.725271 -8.135523 16.651106 5.237010 -4.970528 11.373977 2.077701 -3.349981 9.513337 -1.168206 7.798651 9.570769 -13.808531 11.459855 -13.832242 -11.750551 0.569963 -4.130961 -28.771826 -3.039447 -3.619078 6.532375 -22.596296 -2.856187 0.070913 -0.202767 0.657517 -0.080359 0.345857 0.081775 -5.820331 -10.849893 -6.253922 23.705336 2.202748 -4.659867 -6.019753 5.628711 -0.206974 -0.299128 0.111720 -0.025288 0.022816 -0.151305 -0.293108 +26.510223 160.578262 10.631166 1.509543 -20.546747 -11.941781 -5.426848 -6.834595 2.596623 -15.080201 2.882154 36.342155 -0.439381 0.155297 -0.110472 0.509255 0.223222 0.627560 5.388550 6.478948 -30.098579 10.345504 -5.109653 42.165100 -0.369353 -0.014280 0.083978 0.039218 -0.152108 0.316187 13.148519 -8.472137 15.162544 4.605397 -5.061192 11.928950 1.169580 -3.510801 10.782343 -1.216235 7.744538 9.140695 -13.484951 11.285516 -13.437781 -10.701100 1.506507 -3.970622 -25.873207 -2.326818 -3.344156 8.325457 -22.733202 -3.012520 0.062421 -0.194426 0.615338 -0.062408 0.336520 0.100752 -5.866334 -11.664648 -5.973337 20.448063 1.453238 -4.190457 -6.813042 6.217705 -0.259349 -0.294202 0.098407 -0.013473 0.037498 -0.163875 -0.265679 +26.771172 160.777542 11.501239 2.507116 -20.461100 -12.670695 -6.273822 -6.805063 2.954646 -15.928895 3.128758 36.399998 -0.441079 0.147544 -0.116088 0.541775 0.265972 0.640284 6.203708 6.307174 -28.441244 9.863848 -4.286054 37.236328 -0.377128 -0.039560 0.084529 0.066705 -0.161141 0.329236 13.001389 -8.391287 13.406409 3.984993 -5.040024 12.439559 0.595321 -3.548923 12.278625 -1.044972 7.466175 9.051798 -13.864154 11.280949 -13.441063 -9.812380 2.114730 -3.989099 -22.634626 -2.013847 -2.904276 9.932492 -21.954315 -3.042250 0.063089 -0.161804 0.598456 -0.052110 0.341347 0.116681 -5.675417 -12.203488 -5.743667 17.233034 0.692959 -3.680873 -7.530044 6.283172 -0.283310 -0.306511 0.061624 0.001928 0.021749 -0.185621 -0.262076 +26.972334 160.862076 12.383259 3.415229 -20.432686 -13.422240 -6.531923 -6.755730 3.241849 -17.213652 3.600445 36.568054 -0.435094 0.140483 -0.127908 0.578140 0.304986 0.676491 7.103052 6.117584 -26.149174 9.459355 -3.466158 31.442125 -0.394230 -0.055242 0.070113 0.084411 -0.186495 0.356628 12.805659 -8.272581 11.670363 3.390185 -5.033550 12.947404 0.031338 -3.579120 13.775165 -0.679220 7.280112 9.481005 -14.451628 11.549043 -13.697821 -8.897223 2.924107 -3.860555 -19.323626 -1.382806 -2.470083 10.623823 -22.644186 -3.106488 0.062249 -0.127346 0.587278 -0.049843 0.361036 0.116726 -5.800202 -12.774473 -5.730629 14.982851 0.286638 -3.362186 -8.968638 6.913739 -0.391247 -0.306559 0.030014 0.030572 -0.008319 -0.206609 -0.264299 +27.158152 160.817322 13.273156 4.178040 -20.401508 -13.989384 -6.728358 -6.666316 3.472641 -18.435589 4.057239 36.627659 -0.448988 0.137338 -0.134323 0.594408 0.332478 0.676378 8.150285 5.966251 -24.118416 8.591938 -2.674802 26.335051 -0.393951 -0.066596 0.071292 0.109303 -0.185483 0.349733 13.017832 -8.322638 10.027901 2.739346 -5.033140 13.218043 -0.787431 -3.596462 14.859611 -0.958070 7.543903 9.780329 -14.447697 11.533258 -13.625312 -7.711068 3.614034 -3.627153 -16.468252 -0.666111 -1.985993 10.841960 -22.122223 -2.931691 0.062805 -0.121886 0.579755 -0.044828 0.356741 0.125079 -5.805629 -13.148984 -5.854373 12.717903 0.189523 -3.025524 -10.356219 6.965841 -0.462074 -0.319137 0.016402 0.027700 -0.001117 -0.213462 -0.262797 +27.321890 160.801422 14.255095 4.946043 -20.508833 -14.940403 -6.958041 -6.559960 4.086045 -19.648905 4.556996 36.886921 -0.450139 0.123199 -0.135574 0.624946 0.364964 0.705129 9.229939 5.678442 -21.447493 7.385245 -1.915828 21.160921 -0.405331 -0.058375 0.070062 0.129015 -0.203491 0.345481 12.976206 -8.243620 8.728724 2.239534 -5.024657 13.625073 -1.424046 -3.578228 15.948986 -0.981530 7.313973 10.527342 -14.422009 11.311280 -13.748481 -6.871079 3.704405 -3.267263 -13.163970 0.135595 -1.440503 10.389285 -20.049818 -2.452715 0.082419 -0.124207 0.584684 -0.056666 0.372598 0.134666 -6.183993 -13.081244 -5.309736 10.162413 -0.671082 -2.564939 -10.699128 7.353082 -0.487681 -0.316043 0.008306 0.032860 0.002225 -0.239125 -0.264070 +27.428707 160.531082 15.294714 5.703775 -20.256701 -15.519925 -7.196785 -6.545850 4.257950 -20.927525 5.093308 37.295616 -0.500497 0.140539 -0.153777 0.629641 0.370836 0.719907 10.193837 5.346374 -19.318495 5.769405 -1.305561 16.639442 -0.409684 -0.056625 0.063502 0.150821 -0.207580 0.335314 12.797185 -7.907486 6.964044 1.761632 -4.947074 13.856715 -1.827735 -3.432480 17.138826 -0.531857 6.803260 11.213492 -14.633528 11.101587 -14.468023 -6.005608 3.623890 -3.380766 -9.705785 -0.122615 -0.731042 8.637973 -16.405525 -1.742671 0.071445 -0.164527 0.611322 -0.056107 0.376654 0.122694 -6.471622 -13.350546 -4.653766 7.661216 -2.127180 -2.048133 -10.403763 7.991581 -0.476066 -0.341601 0.028269 0.006326 0.028966 -0.228808 -0.284350 +27.493876 159.986969 16.225090 6.505923 -19.816099 -15.792547 -7.225764 -6.594086 4.017480 -22.743587 5.930781 38.025814 -0.524168 0.152893 -0.170459 0.622984 0.364369 0.725636 10.931604 5.140923 -18.166302 4.152296 -0.897252 13.644516 -0.412881 -0.051382 0.050218 0.154105 -0.213325 0.335602 12.312098 -7.396590 5.260131 1.402020 -4.795534 13.713645 -1.886873 -3.237499 17.828917 -0.183519 6.420335 12.238024 -14.572721 10.980402 -14.632392 -4.635122 3.152243 -3.321966 -7.274454 -0.893738 -0.275724 7.121032 -12.048379 -1.200795 0.059367 -0.186750 0.625442 -0.057743 0.382362 0.104220 -7.011807 -13.445061 -3.798611 5.645732 -3.947573 -1.640895 -10.607961 8.770006 -0.469666 -0.349905 0.047000 -0.002222 0.037439 -0.211954 -0.295601 +27.532330 159.363861 17.213467 7.416900 -19.494242 -15.515124 -7.424826 -6.558841 3.373274 -24.341486 6.689623 38.389465 -0.518145 0.139356 -0.193565 0.633673 0.382409 0.753107 11.013094 4.972200 -17.876244 3.351829 -0.731983 11.951494 -0.425001 -0.057061 0.041721 0.149341 -0.245427 0.360881 11.158368 -6.683503 2.925661 1.058700 -4.698024 13.332677 -1.426903 -3.248408 18.659351 1.121216 5.317670 13.745837 -15.512632 11.424509 -14.613899 -3.754623 2.911975 -2.823275 -4.038575 -0.525182 0.325413 4.316759 -9.738640 -0.771512 0.044617 -0.172640 0.617361 -0.051132 0.405158 0.085168 -7.524969 -13.032667 -3.001089 3.638146 -5.289234 -1.164997 -10.563555 8.773877 -0.409337 -0.351947 0.042364 0.028888 0.005034 -0.213377 -0.305255 +27.695181 158.627518 18.155806 7.794327 -19.313000 -15.174962 -7.297858 -6.537753 2.950397 -25.697102 7.403965 38.881237 -0.492120 0.129246 -0.203287 0.633125 0.386721 0.770137 11.229336 5.004048 -17.991112 2.874230 -0.663293 11.619857 -0.424290 -0.073812 0.033037 0.137936 -0.267916 0.386499 11.414920 -6.510054 1.247990 0.610726 -4.569388 12.911345 -1.834156 -3.198718 18.979137 1.936558 4.535670 14.316800 -16.555805 11.890673 -14.008277 -3.470664 2.829899 -2.519805 -0.606102 -0.176974 0.854123 2.670272 -8.343901 -0.529685 0.027446 -0.140962 0.587086 -0.036035 0.413880 0.069573 -8.204558 -12.842981 -2.446150 1.981864 -6.081917 -0.724465 -10.856956 9.108917 -0.407645 -0.340807 0.019659 0.062113 -0.039142 -0.218698 -0.305900 +27.910583 157.872910 18.796307 7.579402 -19.323778 -15.490830 -6.361194 -6.463493 3.213246 -27.150126 8.325544 39.662460 -0.443766 0.083952 -0.203008 0.640009 0.397184 0.786582 11.456369 5.230164 -18.043110 3.342711 -0.729393 12.733683 -0.435465 -0.061484 0.028717 0.117925 -0.311334 0.396568 12.139112 -6.629135 1.241002 0.523028 -4.460130 12.709960 -2.277727 -3.122156 18.574244 2.059748 4.103112 14.764845 -17.487783 12.194468 -13.765767 -2.983247 2.301095 -1.975176 1.602722 0.192268 1.049478 1.480643 -6.219151 -0.375063 0.059949 -0.111983 0.576696 -0.056698 0.442031 0.069010 -10.012108 -12.408910 -1.667515 1.691757 -6.802887 -0.690436 -11.437198 9.514336 -0.399485 -0.303349 0.006077 0.098906 -0.081915 -0.244688 -0.298526 +28.256033 157.243652 19.202314 6.619047 -19.515514 -16.170013 -5.049762 -6.438457 3.994563 -27.722490 8.970179 40.695061 -0.414075 0.060881 -0.196965 0.645113 0.382013 0.812867 12.207331 5.730344 -17.998344 3.794617 -0.809540 14.557367 -0.448982 -0.036615 0.027127 0.086324 -0.347967 0.407241 13.207967 -6.881624 2.611502 1.062378 -4.369789 12.824994 -2.233368 -2.979116 17.863140 1.805662 3.666406 14.254072 -18.466263 12.003782 -14.364811 -3.470206 1.145984 -1.504568 3.472540 0.628361 1.088927 1.137852 -3.970195 -0.355941 0.093388 -0.105908 0.595226 -0.086336 0.467340 0.064301 -11.256709 -11.627702 -0.682971 0.497248 -8.147976 -0.546913 -12.174492 9.683573 -0.324828 -0.273249 0.012949 0.120209 -0.108675 -0.260369 -0.302822 +28.469486 156.712158 19.476837 5.936457 -19.291494 -16.510584 -4.314813 -6.596530 4.166833 -27.716173 9.325768 41.968533 -0.394559 0.036430 -0.196829 0.638981 0.376217 0.808760 12.360656 6.107997 -18.496819 4.488555 -0.965436 16.414574 -0.452255 -0.026597 0.027710 0.070869 -0.368298 0.406355 13.689814 -7.071288 3.664774 1.392390 -4.324204 12.869937 -2.131558 -2.953768 17.327047 1.898479 3.659154 13.519573 -18.857964 12.177397 -14.835176 -3.913601 0.263147 -0.987425 5.348692 1.344064 1.236656 0.650495 -2.797549 -0.337061 0.115479 -0.094630 0.600837 -0.102653 0.478225 0.063150 -11.445036 -10.924508 -0.109233 -0.463606 -9.095818 -0.408058 -12.674798 9.739704 -0.280264 -0.255049 0.013882 0.129564 -0.127421 -0.266965 -0.301590 +28.507732 156.328735 19.608248 5.877979 -19.275055 -16.642439 -4.231072 -6.563033 3.977530 -27.651634 9.639736 42.940331 -0.356939 0.009156 -0.193326 0.623640 0.366510 0.792632 11.944232 6.402825 -19.390488 5.223431 -1.148553 18.239754 -0.453429 -0.008864 0.037452 0.041037 -0.377324 0.410700 13.449501 -6.987158 4.385611 1.450511 -4.202438 12.782251 -2.048116 -2.894012 16.811174 2.206767 3.451781 13.570646 -18.901318 12.359043 -14.885515 -4.097636 -0.487771 -0.104574 6.466041 2.751614 1.433196 0.520889 -2.941653 -0.287135 0.128721 -0.085205 0.596147 -0.113573 0.490175 0.063327 -11.562263 -9.780145 0.505087 -0.402581 -9.572149 -0.456800 -12.212416 9.738600 -0.208238 -0.232805 0.028218 0.151654 -0.142755 -0.265534 -0.288885 +28.495174 156.061432 19.592438 5.501058 -19.350945 -16.332731 -3.837939 -6.523833 3.333602 -27.364178 9.856051 43.908699 -0.339580 -0.002777 -0.172045 0.606557 0.354069 0.763989 11.635836 6.679457 -20.195469 6.269488 -1.349541 19.030222 -0.451436 0.013829 0.061649 0.020584 -0.352534 0.395421 13.789616 -6.851826 5.068429 1.554950 -3.860307 12.644027 -2.129804 -2.590947 16.209314 1.986827 3.537918 13.261209 -18.228060 12.075634 -15.078617 -3.935500 -1.102296 0.624516 6.667927 3.518052 1.607352 0.009885 -3.920501 -0.230239 0.140701 -0.109313 0.604410 -0.120620 0.487589 0.079452 -11.419358 -8.933211 1.035986 -0.023178 -10.230865 -0.564252 -11.882740 10.352825 -0.206273 -0.225986 0.058319 0.145742 -0.114051 -0.260981 -0.272093 +28.516125 156.039536 19.465685 5.674904 -19.822447 -16.197651 -4.145495 -6.207398 2.875183 -27.154366 9.923443 44.033684 -0.346207 -0.009245 -0.169459 0.605458 0.361128 0.730350 11.433462 6.782385 -20.254290 6.450199 -1.295807 18.598076 -0.457899 0.031789 0.079264 0.020780 -0.336233 0.386858 13.316810 -6.445817 5.878270 1.711433 -3.542288 12.712184 -1.883802 -2.277228 15.895347 1.282376 3.780632 12.934625 -17.386822 11.335402 -16.010757 -3.421887 -1.236075 1.136385 5.349965 4.078175 1.609992 -0.275495 -5.253672 -0.200125 0.157189 -0.128348 0.626756 -0.135326 0.493070 0.098471 -11.274018 -8.355663 1.170930 0.794309 -9.959766 -0.767251 -11.134212 10.553237 -0.177398 -0.235596 0.088233 0.139320 -0.082620 -0.251042 -0.257743 +28.419094 156.204727 19.251654 5.892371 -19.963974 -15.925244 -4.408271 -5.949177 2.377213 -27.043991 9.973926 43.967609 -0.374413 0.006644 -0.166641 0.606943 0.355931 0.732649 11.376003 6.714146 -19.852692 6.347617 -1.127597 17.053879 -0.450238 0.036726 0.080054 0.035612 -0.323032 0.366030 12.463628 -5.909529 6.296504 1.896662 -3.284564 12.838424 -1.374429 -2.048463 15.925504 0.894400 4.254560 12.223474 -16.760063 11.133621 -16.480106 -3.083818 -0.701103 1.128502 3.556656 3.962779 1.557954 -0.022438 -7.912034 -0.173670 0.155078 -0.149009 0.639582 -0.137145 0.475649 0.095825 -10.680950 -8.496921 0.640541 1.857337 -8.790471 -0.998634 -11.055090 10.886378 -0.275493 -0.249577 0.095522 0.111265 -0.056308 -0.245438 -0.269083 +28.313145 156.535706 18.844357 6.165240 -20.005770 -15.635146 -4.529255 -5.598358 1.993390 -27.011898 9.929109 43.251141 -0.386259 0.027305 -0.175337 0.592773 0.337767 0.726744 11.544346 6.617626 -19.253981 5.727003 -0.878350 15.151564 -0.439691 0.025442 0.068230 0.032976 -0.316646 0.370999 10.791121 -5.186068 6.735569 2.329285 -3.194785 13.007287 -0.173148 -1.983963 16.022852 0.677495 4.371609 11.771368 -16.974062 11.088167 -16.466160 -2.745077 0.247081 1.107432 0.963121 4.017067 1.385157 -0.171500 -12.009102 -0.173802 0.132109 -0.144011 0.630670 -0.126670 0.459860 0.076396 -10.462401 -8.816373 0.005802 3.416561 -7.173996 -1.271380 -11.018720 12.153153 -0.479636 -0.255963 0.094012 0.107897 -0.061731 -0.223382 -0.275463 +28.334148 156.812119 18.526560 6.289305 -19.746407 -14.884016 -4.902536 -5.495458 1.099663 -26.763027 9.758233 42.975407 -0.415889 0.059626 -0.185210 0.583701 0.324088 0.717177 11.583754 6.413103 -19.225742 5.001235 -0.703977 13.211629 -0.418526 -0.003871 0.055076 0.049219 -0.298876 0.367174 10.197975 -5.057222 6.696467 2.248960 -3.233037 12.986701 0.029809 -2.038419 16.098520 0.279523 4.780741 10.948934 -16.759459 11.051241 -15.972192 -2.211918 2.186041 0.787180 -2.457603 4.425470 0.989875 0.640502 -19.069113 -0.399566 0.102359 -0.130607 0.614572 -0.105141 0.424362 0.059924 -10.418701 -9.652276 -1.245412 5.683992 -4.246824 -1.551325 -10.165564 12.994842 -0.655952 -0.275387 0.073272 0.089560 -0.064554 -0.202645 -0.286362 +28.281919 157.144897 18.168497 6.217362 -19.357489 -14.474430 -4.849624 -5.331503 0.930427 -26.812569 9.613960 42.313641 -0.403308 0.078879 -0.146240 0.557345 0.301291 0.677366 12.044024 6.111474 -18.542292 3.879405 -0.524048 11.047929 -0.394174 -0.001332 0.083649 0.044970 -0.240997 0.340116 9.875425 -5.108322 7.570101 2.444498 -3.287029 12.839657 0.196800 -2.030328 15.280421 -0.938392 5.296642 10.237026 -16.154505 10.578448 -14.960071 -1.530023 3.556155 0.491242 -7.524105 4.169093 0.007737 1.661104 -24.897514 -0.924328 0.090254 -0.158742 0.591527 -0.085258 0.390342 0.085933 -10.930408 -10.264109 -2.102443 8.866497 -2.155239 -2.066560 -9.462255 14.177317 -0.841838 -0.276961 0.084889 0.064382 -0.016323 -0.197072 -0.263368 +28.145256 157.478989 17.888103 6.438879 -18.983433 -13.634878 -4.996562 -5.069914 0.448505 -26.976662 9.485672 41.312210 -0.422910 0.093854 -0.131487 0.555352 0.289601 0.655290 12.217135 5.817385 -18.419966 2.987233 -0.421200 9.006659 -0.382674 0.009685 0.098585 0.053556 -0.210113 0.311102 9.557613 -4.999937 7.469336 2.257371 -3.230847 12.454625 0.070070 -1.940069 14.706028 -2.111923 5.587919 10.418703 -14.805476 9.686121 -14.442270 -0.763843 4.530457 0.527368 -12.203588 4.299384 -0.972285 1.466293 -30.320681 -1.396747 0.101831 -0.185206 0.606704 -0.091391 0.366431 0.102442 -10.523526 -10.248473 -2.707335 11.884771 -0.730212 -2.555654 -8.184539 15.410304 -0.957671 -0.289411 0.099144 0.033561 0.024572 -0.191287 -0.259780 +27.987555 157.757355 17.597153 6.590900 -18.473894 -13.192081 -4.916700 -4.718124 0.624047 -27.230591 9.335514 40.014912 -0.463780 0.120630 -0.126881 0.559995 0.275832 0.629370 12.542315 5.505054 -17.914700 1.989046 -0.353302 7.205283 -0.378806 0.028358 0.094119 0.070591 -0.179430 0.281900 9.933933 -5.209037 7.816594 1.871777 -3.203335 12.190755 -0.783658 -1.798967 14.023971 -4.328123 6.556165 10.329533 -12.491396 8.176528 -14.687619 0.190274 5.511032 0.480901 -17.630054 4.033924 -2.144210 1.617397 -34.709877 -2.087683 0.127531 -0.214165 0.647752 -0.118627 0.345093 0.113497 -9.684559 -10.317213 -3.567543 15.014855 0.938921 -3.019521 -6.052627 15.941678 -0.893611 -0.301818 0.122427 -0.007204 0.074227 -0.173948 -0.257328 +27.929296 157.955902 17.287289 6.486798 -17.915457 -12.626208 -4.511978 -4.278030 0.804780 -28.024992 9.420947 38.596401 -0.489453 0.129820 -0.129154 0.568080 0.276546 0.608589 12.735289 5.294944 -17.750332 1.437603 -0.335111 5.804255 -0.367318 0.039235 0.085673 0.091633 -0.162829 0.251417 11.098965 -5.663876 8.365790 1.353060 -3.084488 11.893389 -2.159447 -1.653312 13.226781 -6.287505 7.422965 9.465563 -10.485162 6.895879 -15.016730 0.474856 6.809224 0.156094 -21.475296 3.574103 -2.908965 -1.135661 -38.719398 -1.769933 0.151326 -0.214316 0.661112 -0.142134 0.318277 0.116235 -8.335995 -10.673432 -4.835954 18.136326 2.821139 -3.338707 -3.690794 15.674169 -0.742449 -0.306081 0.125532 -0.031618 0.102438 -0.162563 -0.253174 +27.820786 158.063278 16.915325 6.496053 -16.799917 -11.761994 -4.164052 -3.978837 0.356744 -28.888428 9.588257 37.660709 -0.507119 0.134476 -0.129004 0.585881 0.290950 0.600550 12.797791 5.124864 -18.132662 0.542473 -0.328995 4.499585 -0.364432 0.034018 0.084952 0.113231 -0.155069 0.239447 11.851890 -5.916537 8.227574 0.933982 -2.980747 11.454706 -3.032334 -1.553424 12.648370 -7.550700 7.497711 8.998584 -9.774533 5.935246 -15.131180 -0.501927 8.176579 -0.420931 -24.914446 3.240446 -3.683295 -4.279117 -43.584110 -1.103521 0.167474 -0.206179 0.665795 -0.151180 0.304746 0.128596 -6.558388 -10.994789 -6.181376 21.090391 4.318823 -3.659433 -1.781320 14.683353 -0.619247 -0.315897 0.113235 -0.041881 0.115313 -0.166165 -0.249075 +27.651077 157.989929 16.520098 6.606724 -15.515498 -10.761499 -3.912666 -3.663511 -0.209434 -29.450039 9.703647 36.938599 -0.506894 0.146098 -0.118172 0.594446 0.297968 0.570985 12.580979 5.085282 -19.097672 -0.048135 -0.347027 3.694326 -0.359252 0.020107 0.094678 0.123812 -0.125763 0.240416 12.546407 -6.086960 7.963864 0.383093 -2.807762 10.893657 -4.044005 -1.429007 11.900754 -8.525380 7.479922 8.555558 -8.612842 4.936915 -14.725146 -1.606824 9.750141 -0.882209 -28.435911 3.098134 -4.524391 -8.374520 -49.044765 0.252092 0.171887 -0.186432 0.657627 -0.146265 0.287062 0.154063 -4.515014 -11.329265 -7.604988 24.580059 5.540813 -4.107621 -0.214454 13.408257 -0.554438 -0.327152 0.098074 -0.043467 0.125894 -0.165557 -0.230575 +27.509054 157.929886 16.061840 6.846951 -13.412206 -9.996031 -4.205574 -3.688550 -0.661251 -29.383148 9.554474 36.704128 -0.507193 0.167680 -0.100546 0.564406 0.262201 0.536705 11.579796 4.791521 -20.036314 -0.129270 -0.401878 2.908229 -0.329231 0.016390 0.100761 0.116940 -0.087856 0.215536 12.808699 -6.272559 7.860372 0.026687 -2.846469 10.349310 -4.609389 -1.489342 11.069439 -9.777775 7.490836 8.138124 -7.942896 4.006900 -13.645101 -3.247888 10.604901 -1.366510 -31.971022 2.656558 -5.334971 -14.056494 -52.754684 2.650846 0.162624 -0.198499 0.638849 -0.135547 0.247199 0.154897 -2.040987 -11.456670 -8.653467 27.142281 6.240992 -4.321498 2.422256 12.260751 -0.365779 -0.323963 0.101538 -0.066962 0.149150 -0.147834 -0.219480 +27.358770 157.782593 15.496133 6.788787 -11.134368 -9.614805 -4.261551 -3.814380 -0.808450 -29.310335 9.510910 36.974522 -0.521859 0.191249 -0.089561 0.559006 0.239795 0.532668 10.937528 4.572268 -20.635897 -0.337695 -0.445414 2.217181 -0.320929 0.033838 0.105267 0.112757 -0.065382 0.201044 12.753426 -6.405128 8.169694 0.008934 -2.971954 10.075360 -4.622120 -1.569485 10.458385 -11.021444 7.419281 7.895995 -7.173454 2.898945 -13.991714 -5.389252 10.770049 -1.971978 -35.751251 2.154402 -6.323444 -20.101421 -55.027874 5.328976 0.164766 -0.227667 0.653576 -0.144029 0.232152 0.155477 0.690645 -10.992711 -9.553598 29.057413 6.800388 -4.482231 4.684982 10.646732 -0.206501 -0.327411 0.125222 -0.086834 0.182883 -0.135296 -0.218393 +27.256611 157.571075 14.938485 6.907387 -8.808911 -9.017999 -4.747157 -3.956686 -1.112989 -28.830578 9.288108 37.203205 -0.538541 0.209651 -0.081172 0.552664 0.231140 0.507164 9.714401 4.300671 -21.690802 -0.050915 -0.481154 1.758110 -0.307726 0.027059 0.108730 0.124085 -0.035511 0.183618 12.783366 -6.612916 7.836720 -0.255752 -3.141009 9.813004 -4.893421 -1.766727 10.150003 -11.858894 7.526943 7.324223 -6.254012 2.068009 -13.801638 -8.428396 10.003999 -2.483597 -38.703457 2.293346 -7.564543 -24.192644 -55.855354 6.923777 0.164581 -0.233411 0.651674 -0.140658 0.206786 0.166690 4.469385 -9.501974 -10.452719 30.442530 7.312328 -4.552038 6.268474 8.732052 -0.183151 -0.337578 0.123945 -0.109508 0.208811 -0.125698 -0.210384 +27.127756 157.316086 14.274278 6.775599 -6.507912 -8.862823 -5.171206 -4.089110 -0.955636 -27.720991 8.876371 37.626236 -0.534073 0.188696 -0.087676 0.576613 0.266977 0.499557 8.937410 4.127944 -22.383862 -0.121529 -0.483163 1.646141 -0.317544 0.032691 0.104554 0.141972 -0.041325 0.181035 13.116732 -6.870962 8.310552 -0.555759 -3.112181 9.578821 -5.486259 -1.838255 9.563967 -12.046547 7.589824 7.081832 -4.907162 1.466473 -14.496325 -11.639562 8.751147 -3.462270 -40.203728 1.616122 -8.190225 -28.786757 -54.461182 8.540463 0.188206 -0.211507 0.652425 -0.158670 0.213600 0.177908 7.835373 -8.014629 -11.214699 32.668186 7.632522 -4.768003 7.094429 6.933567 -0.238031 -0.336093 0.115624 -0.096245 0.208993 -0.134662 -0.197264 +26.811459 157.055984 13.589232 6.633000 -3.379308 -8.963644 -5.359104 -4.458471 -0.615360 -26.219837 8.311506 38.355980 -0.506872 0.168480 -0.082647 0.590854 0.280681 0.504045 7.685139 3.786134 -22.846666 0.119188 -0.486873 1.514526 -0.322953 0.044360 0.106106 0.138804 -0.051946 0.183437 12.830571 -6.839167 9.189353 -0.610072 -2.988507 9.075729 -5.569285 -1.865801 8.469414 -11.673670 6.729028 7.838302 -3.860596 0.691865 -14.111486 -15.080119 6.766972 -4.574650 -40.491974 0.356427 -8.174877 -32.617580 -51.536537 9.515482 0.209653 -0.193560 0.646073 -0.172186 0.223482 0.187531 11.314700 -6.320184 -11.282820 35.187767 6.961077 -5.255075 6.964103 5.145133 -0.332704 -0.320729 0.107729 -0.076074 0.196459 -0.151824 -0.186032 +26.506559 156.778824 12.884620 6.195649 0.476792 -9.144032 -5.695021 -5.174690 -0.457100 -23.786228 7.350578 39.803192 -0.489150 0.136968 -0.103485 0.598728 0.284289 0.520162 6.428799 3.452326 -23.384386 -0.012477 -0.509746 1.821608 -0.340038 0.060420 0.093679 0.120103 -0.100616 0.200337 12.191336 -6.764834 10.340174 -0.289334 -3.037114 8.305818 -4.977554 -1.994376 6.976995 -10.789354 5.058816 9.340853 -3.860896 0.062813 -14.103300 -18.551046 4.631237 -5.555517 -41.698776 -1.277525 -8.032069 -33.229149 -48.064198 8.790215 0.235023 -0.176267 0.662087 -0.198794 0.255394 0.172102 13.340326 -4.712874 -10.690874 38.376675 6.124826 -5.813799 6.899889 3.997362 -0.349236 -0.303472 0.111973 -0.044822 0.156026 -0.157777 -0.192411 +26.112862 156.503250 12.168968 5.889039 4.027993 -9.381686 -6.177385 -5.733287 -0.360138 -21.145191 6.346475 41.281322 -0.480794 0.095810 -0.136325 0.635769 0.326584 0.544057 4.886581 3.243263 -24.132982 0.126773 -0.492946 3.124017 -0.375925 0.076931 0.074487 0.122696 -0.157869 0.226612 11.215116 -6.394166 11.346626 0.031668 -2.962643 7.721260 -4.228791 -2.005972 5.892842 -9.931376 3.643891 10.932244 -3.249624 -0.614939 -15.026593 -21.152819 3.001294 -6.619433 -43.263359 -3.333680 -7.552732 -34.165466 -44.198189 8.164322 0.272759 -0.146938 0.689683 -0.236841 0.305170 0.166074 15.491241 -3.360891 -10.549704 41.642200 5.898207 -6.354410 6.035789 3.544833 -0.377619 -0.293818 0.111690 -0.003321 0.117389 -0.172473 -0.194160 +25.682352 156.340729 11.418087 5.790192 7.748963 -9.290643 -6.843565 -6.347860 -0.874907 -18.338005 5.277672 42.960579 -0.489328 0.076215 -0.158331 0.639729 0.330039 0.571174 2.649520 2.890831 -25.126398 0.867230 -0.512140 4.613028 -0.392325 0.101840 0.069029 0.113425 -0.197171 0.230841 9.274328 -5.609239 11.931591 0.496533 -2.974296 7.063812 -2.776736 -2.062853 4.870038 -8.351538 1.289216 12.945567 -3.259971 -1.269555 -15.253655 -23.412178 1.997335 -7.498384 -45.566925 -5.403112 -6.880269 -35.154152 -40.903614 7.734395 0.283502 -0.174639 0.719710 -0.255564 0.339071 0.146662 16.905842 -1.801016 -10.186190 44.908562 6.075357 -6.669163 5.625559 3.377562 -0.373105 -0.292405 0.140568 0.005154 0.108520 -0.175083 -0.211244 +25.267401 156.330109 10.413910 5.444503 11.091393 -9.337664 -7.292743 -6.890935 -1.679170 -15.633410 4.239280 44.620853 -0.524525 0.069692 -0.180778 0.666439 0.346769 0.626465 0.377726 2.727043 -26.340738 2.068004 -0.556169 6.900183 -0.418630 0.133603 0.057653 0.124755 -0.241335 0.229123 7.783958 -4.982745 12.536944 1.037389 -3.030974 6.807705 -1.400781 -2.109975 4.427903 -7.269387 -0.934046 14.430367 -3.465406 -2.017185 -16.500044 -25.518169 0.690638 -8.085207 -47.981094 -7.350722 -6.314770 -36.430801 -39.605522 7.813423 0.300733 -0.217047 0.768918 -0.284452 0.377752 0.130339 18.112000 0.683629 -9.987900 47.187668 7.177171 -6.534894 5.841741 3.755847 -0.366709 -0.301735 0.171345 -0.001595 0.120323 -0.185919 -0.240601 +24.757339 156.462357 9.398056 5.140917 14.700566 -9.257553 -7.617283 -7.396221 -2.665056 -12.831518 3.093703 45.989662 -0.561137 0.056750 -0.205102 0.685723 0.363207 0.669600 -2.078820 2.491378 -27.523489 3.325748 -0.667084 9.491775 -0.435423 0.166990 0.052831 0.137159 -0.282085 0.215167 6.187521 -4.564235 12.958233 1.452019 -3.341072 6.580101 -0.106627 -2.414554 4.067213 -6.466203 -3.041080 15.888473 -3.680738 -2.808351 -17.588573 -27.122450 -0.889863 -7.959660 -50.138367 -8.858303 -5.839655 -38.189217 -39.620178 8.375214 0.317559 -0.266440 0.812265 -0.311224 0.407679 0.111665 19.045721 4.053458 -9.486546 49.144295 8.513583 -6.285137 6.160067 5.144678 -0.403840 -0.312525 0.207287 -0.012288 0.138114 -0.192091 -0.268036 +24.252823 156.548935 8.511737 4.674037 17.894131 -9.122764 -7.568373 -7.568077 -3.641251 -10.455710 2.214752 46.878716 -0.568833 0.022832 -0.221989 0.727509 0.419270 0.704310 -4.612614 2.401094 -28.861809 5.347660 -0.924410 12.816666 -0.461351 0.185382 0.046128 0.164893 -0.319433 0.213177 5.360588 -4.290269 12.378952 1.442705 -3.491658 6.765563 0.463507 -2.665859 4.571858 -5.536810 -4.904373 16.657133 -3.049927 -3.569868 -18.673468 -27.262775 -2.064705 -7.615417 -52.433380 -10.924396 -5.001574 -41.596893 -41.422283 10.258605 0.345629 -0.269561 0.830347 -0.336001 0.442730 0.115190 18.869480 7.188067 -9.061037 51.782959 10.265279 -6.012962 6.841997 8.344935 -0.568907 -0.315193 0.208405 0.002023 0.138439 -0.219836 -0.272929 +23.750124 156.894760 7.657303 4.352764 20.701208 -9.514061 -7.624806 -7.507493 -3.916563 -8.307099 1.435458 47.252907 -0.589037 -0.003764 -0.241422 0.780072 0.490548 0.729637 -7.280618 2.358363 -29.561993 7.891869 -1.388176 16.730862 -0.491534 0.211425 0.040546 0.206172 -0.341295 0.207593 4.675524 -3.995425 12.212840 1.493172 -3.606462 7.209406 0.835801 -2.859912 5.356023 -5.429156 -6.063474 17.707420 -1.559872 -4.580997 -20.432966 -27.186787 -4.661180 -7.050848 -54.059475 -13.224689 -4.012879 -44.873283 -43.280090 12.223423 0.376182 -0.283724 0.857334 -0.366426 0.477827 0.126877 19.185154 11.218606 -8.611263 52.720711 12.296453 -5.495497 7.627233 11.524870 -0.680140 -0.326706 0.222715 0.012090 0.163704 -0.240877 -0.268886 +23.076286 157.396027 6.736727 3.902190 23.131449 -9.817772 -7.091005 -7.263295 -4.586116 -6.470473 0.922654 47.406464 -0.599875 -0.023277 -0.252923 0.834138 0.569557 0.739246 -9.796522 2.663103 -30.255285 11.229040 -2.094781 20.610754 -0.515379 0.210846 0.036121 0.254810 -0.345627 0.209716 4.079899 -3.611621 11.961162 1.617828 -3.604820 7.787615 1.232804 -2.995565 6.384168 -5.370366 -7.014481 18.022215 -0.329715 -5.486229 -21.524443 -26.786692 -7.744493 -6.469048 -54.614410 -15.926503 -2.720302 -48.847843 -46.338074 15.293496 0.394347 -0.268519 0.855962 -0.377946 0.496745 0.150311 19.520689 15.817826 -8.554372 52.306324 15.267834 -4.242362 8.479193 13.175737 -0.634887 -0.342827 0.207970 0.029750 0.180711 -0.262620 -0.252554 +22.342482 158.155441 5.738756 3.340364 24.986353 -10.399273 -6.553118 -6.700752 -4.828434 -4.284128 0.304712 46.842049 -0.611254 -0.041784 -0.260557 0.896812 0.650461 0.749104 -11.787798 3.423436 -30.931515 14.524968 -3.007082 24.950720 -0.535138 0.217434 0.034414 0.308262 -0.345590 0.203098 4.307357 -3.246231 11.763131 1.693547 -3.355433 8.567758 1.115697 -2.875676 7.686456 -6.087947 -7.601295 18.446281 1.503665 -6.731266 -22.879425 -25.852041 -11.266815 -5.984095 -54.646667 -19.303923 -1.083377 -51.974373 -50.511169 18.938475 0.426271 -0.253215 0.858091 -0.398647 0.509887 0.180783 19.293089 20.227831 -8.606131 51.271729 18.473427 -3.167467 8.610084 15.805938 -0.696701 -0.355118 0.193019 0.043103 0.205915 -0.289462 -0.232204 +21.487509 159.118042 4.886203 2.574727 26.411364 -11.249447 -5.704976 -5.767097 -4.465809 -2.047333 -0.226933 45.554066 -0.629889 -0.041481 -0.267808 0.928224 0.700160 0.729131 -13.002821 4.720261 -31.158447 17.416796 -3.973168 29.132910 -0.546667 0.215335 0.031523 0.347864 -0.326138 0.198373 4.755208 -2.895724 11.626527 1.745035 -3.077947 9.427836 0.749930 -2.676699 9.038092 -6.702932 -8.187261 18.972996 3.247222 -7.902697 -23.919952 -24.892681 -14.792261 -5.269094 -53.935734 -22.475761 0.428190 -56.237373 -56.129036 24.449215 0.439075 -0.247233 0.860718 -0.407486 0.511458 0.205393 18.506235 24.502462 -8.734241 49.908413 21.849981 -2.127067 8.686869 18.662460 -0.728739 -0.373203 0.189986 0.043915 0.237030 -0.290892 -0.210483 +20.714626 160.259537 4.110352 1.084065 27.862707 -12.237287 -4.531384 -4.959218 -3.949564 0.621185 -1.050939 43.435452 -0.648016 -0.027089 -0.265759 0.939690 0.720619 0.711155 -13.544262 6.035306 -31.078773 20.601147 -5.201355 32.541603 -0.543211 0.211734 0.033525 0.373458 -0.297999 0.187902 6.174717 -2.997992 11.238691 1.889531 -2.923465 10.237421 0.114070 -2.531337 10.361115 -7.205350 -8.818517 19.124388 4.377102 -8.996162 -24.557495 -24.104315 -18.352659 -4.705760 -52.976940 -25.857395 2.054389 -57.892948 -61.063164 28.683056 0.436944 -0.255652 0.855481 -0.404871 0.498203 0.220227 16.802036 27.978418 -9.021023 48.240959 24.988777 -1.289507 9.076638 22.529875 -0.701426 -0.388458 0.192115 0.033908 0.271387 -0.285011 -0.195005 +19.973467 161.286697 3.467018 -0.157658 29.672157 -12.791768 -3.645278 -4.357064 -3.632952 3.092369 -1.792673 41.157894 -0.685380 0.008217 -0.269988 0.936455 0.717409 0.690593 -14.261652 6.967924 -31.090961 23.464724 -6.652688 35.937088 -0.528016 0.192493 0.031125 0.397189 -0.264269 0.176891 7.117581 -3.085521 10.249029 1.881544 -2.924058 11.022483 -0.383868 -2.526937 11.900953 -6.970782 -9.615442 18.835859 5.266111 -9.773144 -24.735203 -22.032505 -21.499079 -4.712995 -52.627575 -29.853632 4.281100 -56.841473 -64.996628 30.823324 0.415342 -0.263186 0.850021 -0.388351 0.468042 0.222964 13.979361 30.389048 -9.677240 46.967880 28.108070 -0.523525 8.869577 27.491089 -0.840880 -0.415441 0.188452 0.007703 0.299879 -0.265162 -0.194290 +19.270384 162.365479 2.924788 -0.737231 31.760529 -12.884562 -3.408679 -4.051496 -3.396710 4.978698 -2.371037 38.835121 -0.706923 0.073935 -0.256831 0.914537 0.678078 0.667553 -15.058596 7.311622 -30.568090 25.421272 -8.025341 38.849129 -0.507950 0.165078 0.029166 0.395852 -0.206473 0.188079 7.443910 -3.043360 9.057798 1.799011 -2.997092 11.672008 -0.711227 -2.571478 13.298458 -6.665573 -10.362669 18.288492 6.055379 -10.549313 -24.359921 -19.468855 -24.336796 -4.853502 -52.497917 -34.061764 6.764423 -51.246044 -68.780975 29.489822 0.370312 -0.269720 0.836988 -0.354585 0.431586 0.225656 11.452595 31.989756 -10.172949 45.385487 30.810452 0.092491 8.423731 32.605316 -1.004074 -0.435630 0.186024 -0.016336 0.323025 -0.235989 -0.187823 +18.489204 163.473816 2.426389 -1.132650 33.618259 -12.843373 -3.003345 -3.686340 -2.951400 6.131579 -2.600552 35.830009 -0.709885 0.099541 -0.249105 0.891214 0.668219 0.617282 -15.390014 7.580908 -29.836866 26.334887 -9.080176 41.527023 -0.483952 0.135351 0.037219 0.401409 -0.156557 0.187774 7.727562 -2.955788 7.902610 1.562106 -2.933486 12.376259 -1.237518 -2.519610 14.772305 -6.146260 -11.046305 17.343742 7.078821 -11.191075 -24.219412 -16.798454 -26.725185 -5.159769 -51.688663 -38.204365 8.997954 -40.547810 -72.454163 23.877092 0.336436 -0.258022 0.802829 -0.321951 0.394577 0.233161 9.020132 33.083729 -10.574512 43.823509 33.360817 0.529452 6.874249 38.518837 -1.641460 -0.452358 0.175818 -0.024151 0.337114 -0.211633 -0.166974 +17.818249 164.549911 1.987082 -1.669462 35.966488 -12.863760 -2.559472 -3.487328 -2.332265 7.178030 -2.834816 32.471252 -0.729256 0.151028 -0.219987 0.872741 0.654954 0.570624 -15.867421 7.378201 -28.716722 27.359146 -10.412948 44.096806 -0.458428 0.106448 0.054889 0.420764 -0.077641 0.173900 8.401584 -3.092587 6.181583 1.264567 -2.992383 13.212544 -1.919180 -2.575034 16.747463 -5.791980 -11.739221 16.280205 8.157859 -12.109204 -24.015450 -13.222481 -28.496101 -6.037446 -50.733482 -42.651997 11.294716 -21.121883 -74.588760 10.186108 0.298478 -0.274024 0.774145 -0.282015 0.346651 0.261231 5.780999 33.472885 -11.349483 42.253662 36.111099 1.044659 2.876709 43.645061 -3.439074 -0.480661 0.169581 -0.058964 0.391435 -0.193450 -0.144480 +17.118929 165.492126 1.560435 -2.363856 37.232601 -12.555926 -1.380674 -3.145419 -2.132905 7.019211 -2.561817 29.061306 -0.742413 0.212739 -0.198082 0.839089 0.621893 0.506912 -15.523519 7.535924 -28.395220 27.470814 -11.503848 47.098637 -0.416069 0.047610 0.066194 0.429589 0.000715 0.174507 9.755501 -3.024456 4.374388 0.919355 -2.623699 13.767676 -2.787028 -2.188471 18.505575 -5.478118 -12.435144 14.685334 8.432644 -13.261312 -22.895044 -9.676352 -29.617075 -6.837114 -50.237061 -46.967857 13.555501 4.105612 -73.626404 -8.817780 0.243427 -0.254196 0.719400 -0.225253 0.277913 0.276940 2.239951 33.225170 -11.838243 40.831387 38.575310 1.665223 -2.832540 49.904495 -6.576490 -0.509175 0.137014 -0.081751 0.411589 -0.160528 -0.121352 +16.425905 166.335007 1.199889 -2.609052 38.426685 -12.076783 -0.686929 -2.750493 -1.495627 7.254966 -2.379292 25.025646 -0.774158 0.270261 -0.177352 0.809937 0.595219 0.464178 -15.145264 7.698559 -27.491161 26.864889 -12.157074 49.959770 -0.376674 0.006841 0.076937 0.449703 0.068978 0.154006 10.270957 -2.727148 2.926963 0.814813 -2.322742 14.248929 -3.079625 -1.842541 20.066139 -5.208372 -13.197989 13.085619 8.233158 -14.254351 -22.296799 -6.165112 -30.107103 -7.931626 -49.386536 -51.513702 15.947107 21.838621 -69.800568 -20.796450 0.196388 -0.268825 0.680208 -0.179166 0.215795 0.287396 -1.146971 32.630714 -12.537682 37.888630 41.263901 2.404889 -8.778207 53.905449 -9.855884 -0.538860 0.121953 -0.123116 0.456289 -0.134009 -0.110284 +15.823487 166.939453 0.957338 -2.458194 39.096638 -11.085819 -0.113667 -2.426255 -1.043060 6.853725 -2.088103 21.353891 -0.770172 0.309080 -0.140322 0.811535 0.612144 0.411920 -14.523732 7.664659 -26.699749 25.181278 -12.337781 53.073620 -0.342226 -0.054531 0.096298 0.486188 0.147364 0.144993 10.486082 -2.210652 1.133899 0.656766 -1.770930 14.519561 -3.172300 -1.319613 21.613180 -4.837639 -13.836258 11.312216 8.424127 -15.531708 -21.024355 -2.186809 -29.764450 -9.434537 -49.840656 -55.719635 18.427782 30.441025 -62.633739 -24.320833 0.162637 -0.231475 0.604523 -0.125768 0.150358 0.331688 -4.162244 31.209024 -12.945097 34.833958 43.420773 3.052536 -16.312780 57.293392 -14.431362 -0.562502 0.061849 -0.133599 0.485390 -0.135037 -0.070651 +15.263407 167.397781 0.771993 -1.931368 39.525993 -9.763933 0.107907 -2.125005 -0.672897 6.383749 -1.817671 18.206617 -0.767250 0.329273 -0.107957 0.810795 0.633394 0.368567 -13.959478 7.614527 -25.785774 23.240271 -12.039417 55.526455 -0.309201 -0.111123 0.111688 0.525504 0.204671 0.123270 10.172791 -1.773887 -0.443471 0.409661 -1.348616 14.542229 -3.182944 -0.971675 22.748981 -4.490136 -14.192956 9.860512 7.893536 -16.344986 -19.524393 1.747664 -28.534069 -10.507598 -50.045864 -59.156509 20.711250 36.987701 -57.076359 -26.331371 0.139308 -0.198371 0.531335 -0.080003 0.090823 0.368534 -6.831972 29.629082 -13.198753 32.790993 45.884430 4.096642 -25.357063 58.677620 -19.937016 -0.579806 -0.000013 -0.148199 0.508312 -0.143690 -0.040736 +14.752724 167.685059 0.590487 -1.855489 39.993675 -8.534652 0.581855 -1.898165 -0.609261 6.072489 -1.618398 15.414845 -0.787126 0.387814 -0.098280 0.805649 0.638670 0.320845 -13.009922 7.475474 -24.452150 21.262867 -11.278568 56.305237 -0.269699 -0.196729 0.111687 0.563239 0.272173 0.132773 10.211312 -1.471810 -2.060840 0.113046 -1.017849 14.419915 -3.395011 -0.697476 23.777367 -3.498134 -14.639064 7.884964 7.236074 -16.955624 -17.916395 5.028893 -26.834433 -11.602651 -50.155472 -62.959286 23.695637 40.778461 -52.011105 -26.312860 0.078547 -0.141134 0.453787 -0.013559 0.018010 0.385684 -9.251797 27.824507 -13.586556 31.788395 48.672009 5.606067 -33.552673 58.065155 -24.539715 -0.616679 -0.071504 -0.157200 0.510329 -0.122149 -0.018888 +14.248546 167.855164 0.315558 -1.287819 40.650135 -7.109170 0.558041 -1.741863 -0.675211 5.791753 -1.464033 12.952365 -0.790623 0.451500 -0.069028 0.776776 0.617841 0.259159 -12.303564 7.058856 -22.429678 18.755112 -9.946091 55.874199 -0.230309 -0.259377 0.123348 0.577013 0.361300 0.138715 9.836038 -1.238977 -3.412211 -0.246978 -0.797325 14.255778 -3.648972 -0.426101 24.427528 -2.777560 -14.911052 6.580720 7.138536 -17.656530 -16.478281 8.136375 -25.788128 -12.451897 -50.526089 -66.041878 26.097467 42.857132 -46.487469 -25.181768 0.015304 -0.119410 0.386420 0.051393 -0.049064 0.407519 -11.358751 26.511700 -13.646576 30.249725 50.779602 6.367391 -40.160397 55.919910 -27.509962 -0.642141 -0.108385 -0.173704 0.536329 -0.093548 0.013469 +13.723034 167.887222 0.162565 -0.229136 40.975327 -5.397136 0.326516 -1.540542 -0.694824 5.043427 -1.231175 10.463954 -0.812217 0.517534 -0.055132 0.754188 0.581387 0.209459 -11.642634 6.754961 -19.837704 16.044327 -8.091333 53.924271 -0.196655 -0.308766 0.122851 0.586104 0.429061 0.141518 8.833982 -0.679342 -4.589886 -0.478321 -0.393616 14.082074 -3.582697 0.051444 24.868689 -2.445581 -15.071013 5.926495 7.649890 -18.425760 -15.514771 11.560550 -24.841127 -13.458413 -52.238525 -69.530991 29.758286 43.397720 -39.980606 -22.952154 -0.025506 -0.094189 0.352894 0.090917 -0.110142 0.420627 -12.530213 25.207895 -13.675694 28.082966 52.878036 6.931263 -42.668774 53.344749 -27.421837 -0.665601 -0.138593 -0.200275 0.552777 -0.061097 0.028205 +13.154796 167.765732 -0.017444 0.959566 41.104847 -3.594487 0.155735 -1.279684 -0.811514 4.171115 -0.979924 7.751913 -0.824138 0.572533 -0.040398 0.721922 0.552391 0.146740 -11.233198 6.256358 -17.111258 13.639364 -6.406019 50.908218 -0.154620 -0.365771 0.127401 0.596922 0.499197 0.139764 8.097175 -0.219603 -5.654725 -0.871037 0.053406 13.916703 -3.923025 0.583317 25.213308 -2.116305 -15.147931 4.912374 7.587058 -19.085005 -14.261256 14.231448 -24.117250 -14.527091 -51.549965 -72.897079 31.825752 42.341152 -33.660423 -20.002796 -0.074823 -0.067302 0.297338 0.141296 -0.176819 0.431586 -13.124614 24.301594 -13.621152 25.465263 55.125561 7.022866 -44.859642 50.077713 -26.820478 -0.687026 -0.172790 -0.220541 0.567529 -0.027324 0.050942 +12.652427 167.478043 -0.145238 1.830665 40.887085 -2.090642 0.203341 -0.954765 -0.745023 3.412243 -0.753820 4.873243 -0.814740 0.600247 -0.016794 0.684655 0.520836 0.093087 -10.378187 5.538208 -13.516997 10.813956 -4.532704 46.161552 -0.120794 -0.398017 0.143334 0.589635 0.552605 0.131268 7.501117 0.185551 -6.643847 -1.183736 0.461419 13.700514 -4.161107 1.097803 25.225357 -2.021372 -15.178529 4.577046 7.414250 -19.561419 -13.088565 16.812534 -23.516056 -15.387744 -48.947865 -75.615837 32.031956 40.235561 -27.932566 -17.082621 -0.107736 -0.059401 0.252675 0.179024 -0.224679 0.442622 -13.820351 23.767580 -13.328532 21.956116 56.987392 6.513611 -45.908699 47.053776 -25.580280 -0.694409 -0.188261 -0.233888 0.581082 -0.006072 0.071746 +12.110833 167.092346 -0.138848 3.214448 39.995869 -0.400861 -0.172369 -0.706984 -0.704552 2.465333 -0.578901 2.867577 -0.784245 0.603264 0.001498 0.668136 0.519923 0.044827 -9.935522 5.001680 -9.852243 8.032180 -2.723483 40.627617 -0.100701 -0.429270 0.152086 0.587611 0.590374 0.135726 6.053524 0.832766 -7.594070 -1.472706 1.063311 13.561659 -4.107346 1.763380 25.276775 -1.713637 -15.009738 4.171632 7.770448 -19.833454 -12.257958 18.805857 -22.693398 -16.168581 -45.025600 -78.042137 31.089230 37.399231 -23.531763 -14.552328 -0.123626 -0.021353 0.203154 0.205293 -0.255328 0.459199 -13.979415 23.608257 -13.260382 17.644209 58.995838 5.293576 -44.641987 43.057518 -22.753746 -0.689299 -0.218243 -0.220942 0.573001 0.000448 0.103300 +11.541359 166.711639 -0.186912 4.041986 38.260788 0.594429 -0.001946 -0.393636 -0.289911 1.297697 -0.416093 1.081805 -0.765974 0.607201 0.024447 0.670154 0.529064 0.026175 -9.254503 4.691311 -6.477743 4.992439 -1.036441 35.051476 -0.097320 -0.446263 0.162433 0.592240 0.618592 0.138083 5.467309 1.606624 -8.325973 -1.702718 1.867656 13.662179 -4.398946 2.648496 25.536352 -1.452954 -14.958820 3.692956 7.889690 -19.984180 -11.892357 19.756786 -22.420794 -16.740669 -36.328949 -79.980850 25.520666 34.929585 -20.203608 -12.623283 -0.128426 -0.004274 0.177889 0.220466 -0.269024 0.482984 -14.112598 24.032343 -13.301061 13.245157 60.299522 3.252534 -43.238102 39.019749 -20.197981 -0.689144 -0.238971 -0.216283 0.580505 -0.007443 0.123910 +10.863702 166.350510 -0.373708 5.104290 37.222961 1.615566 -0.240683 -0.185450 -0.144335 0.592479 -0.316342 -0.405420 -0.736195 0.618846 0.038954 0.636596 0.503462 -0.030630 -9.081887 4.134128 -3.473577 2.565075 -0.024397 29.616327 -0.081818 -0.457703 0.163048 0.572104 0.659229 0.146194 5.097970 2.293075 -8.704230 -2.106709 2.635574 13.919961 -5.069269 3.550424 25.750603 -1.375894 -14.946222 3.327837 8.987719 -20.545603 -11.755752 20.987288 -22.442354 -17.527714 -22.815420 -81.186272 14.998302 32.264179 -17.207109 -10.897923 -0.142293 0.015493 0.149503 0.233261 -0.289754 0.489851 -13.741647 24.259371 -13.205703 8.258407 60.593971 0.634206 -41.903019 36.643791 -18.400705 -0.675251 -0.238598 -0.207686 0.580802 0.016713 0.156652 +10.141197 166.161774 -0.587359 5.852717 36.023449 2.215918 -0.185361 -0.036818 -0.171264 -0.349911 -0.229349 -1.285258 -0.734838 0.602443 0.031015 0.624536 0.507131 -0.056659 -8.748388 3.513398 -0.655237 0.248337 0.668614 24.423582 -0.078985 -0.441205 0.166362 0.570012 0.663036 0.132547 5.001862 2.743685 -8.852294 -2.554771 3.222870 14.288876 -5.795392 4.371886 26.114792 -1.622642 -14.624389 3.388548 9.966020 -20.587978 -12.521220 21.675379 -22.483337 -17.954811 -10.330646 -81.106750 4.553654 31.120750 -15.683968 -10.084130 -0.132992 0.000772 0.155983 0.222329 -0.287111 0.486711 -13.817961 24.514492 -13.282081 3.933015 60.883949 -1.739448 -41.091583 34.993103 -17.245577 -0.670386 -0.214035 -0.209511 0.594442 0.028626 0.166587 +9.369382 165.964890 -0.762876 6.131881 35.297848 2.557128 0.140792 -0.076288 -0.700369 -0.945605 -0.195595 -1.348137 -0.735919 0.615639 0.039135 0.623030 0.509823 -0.064835 -8.137462 2.948272 1.566549 -1.656938 1.063582 20.056902 -0.078516 -0.436332 0.170880 0.573877 0.685527 0.132780 5.203964 3.027670 -8.987067 -2.935827 3.644809 14.544716 -6.430330 4.970622 26.468714 -1.715857 -14.595074 3.133125 10.391131 -20.751883 -13.027472 22.307554 -22.069473 -18.394569 -3.464134 -80.831306 -1.070836 30.342783 -14.991481 -9.655028 -0.143049 -0.016428 0.153628 0.227996 -0.289435 0.493076 -14.138993 24.599751 -13.440356 1.880020 61.035263 -2.997286 -41.170979 33.948147 -16.881983 -0.673929 -0.200437 -0.213240 0.618767 0.034946 0.177534 +8.520331 165.831375 -0.949296 5.960455 34.002510 3.163736 0.682037 -0.217011 -1.864792 -1.128206 -0.188258 -1.227100 -0.763171 0.674046 0.045236 0.601561 0.487997 -0.111852 -7.494087 2.730364 1.876862 -2.839525 1.258644 17.465479 -0.051700 -0.484481 0.174603 0.586676 0.746890 0.141622 5.676180 3.298579 -9.076401 -3.282069 4.062600 14.392307 -7.085402 5.542564 26.450905 -1.872245 -14.158875 2.274806 10.132704 -20.946558 -12.466346 22.521252 -20.788273 -18.695835 -4.992489 -80.579605 0.703920 29.917797 -15.813098 -9.680202 -0.192998 -0.006835 0.124030 0.272350 -0.337309 0.500791 -14.273344 24.135994 -14.065504 1.358220 62.807419 -3.065654 -40.000774 32.790577 -16.121183 -0.705238 -0.218068 -0.234289 0.638900 0.069540 0.190551 +7.720246 165.761398 -0.991845 5.453221 33.028862 3.660711 1.641788 -0.297832 -3.050116 -1.474649 -0.163428 -1.000444 -0.771593 0.711449 0.065923 0.569237 0.444057 -0.147392 -6.791658 2.609566 1.474994 -3.132654 1.263377 16.153952 -0.028051 -0.499574 0.183984 0.575861 0.793300 0.131388 6.246250 3.485019 -9.047722 -3.525821 4.374689 14.036756 -7.661132 6.001658 26.009985 -2.389523 -13.841954 2.069211 10.304131 -21.346611 -11.900013 22.487663 -20.205582 -18.443094 -12.881796 -80.229149 7.255956 30.983335 -17.082664 -10.321006 -0.215359 -0.018506 0.113267 0.293341 -0.374778 0.507041 -13.915841 23.607002 -14.039582 3.067813 64.022621 -1.645805 -40.102722 34.100372 -16.643835 -0.713974 -0.215651 -0.262187 0.662469 0.092126 0.197328 +6.980124 165.773621 -0.957662 4.916332 32.620441 4.376898 2.315460 -0.452144 -4.469755 -1.153489 -0.179857 -0.798818 -0.775162 0.750004 0.075509 0.529064 0.385368 -0.186128 -6.208131 2.539699 0.584355 -2.812706 1.134082 15.222023 -0.000596 -0.528919 0.180524 0.555788 0.825924 0.133544 6.671027 3.718239 -9.128987 -3.618779 4.642916 13.447472 -7.950418 6.331552 25.371599 -2.808104 -13.534370 1.966437 10.238871 -21.713171 -10.781826 22.177227 -19.920835 -17.643257 -27.425217 -79.746002 19.012197 33.702026 -19.412605 -11.854951 -0.239858 0.000493 0.096109 0.315196 -0.415017 0.502440 -13.289996 22.932802 -13.565120 8.296214 64.747215 1.989123 -41.725578 37.136616 -18.509134 -0.716703 -0.230645 -0.281501 0.653199 0.120688 0.198927 +6.303924 165.845642 -0.861806 4.003965 32.788124 4.840666 3.212996 -0.618104 -6.001636 -0.504762 -0.219728 -0.282488 -0.801564 0.772736 0.073209 0.522865 0.363371 -0.172984 -5.456772 2.489627 -0.343292 -1.937934 0.914417 14.788194 0.009172 -0.538319 0.179718 0.557816 0.824922 0.126989 7.351855 3.833125 -9.183214 -3.492319 4.739820 12.859618 -7.923731 6.443955 24.833860 -2.974798 -13.731130 1.955606 9.426987 -21.815243 -10.321687 21.122181 -19.454792 -16.758776 -44.364414 -79.027069 32.739819 36.405079 -22.399908 -13.767385 -0.252362 -0.011473 0.102143 0.324003 -0.429063 0.493708 -13.294688 22.132700 -13.033670 15.881107 64.539932 6.900066 -44.752182 41.038544 -21.676315 -0.730775 -0.234082 -0.303218 0.657013 0.126173 0.178843 +5.592465 165.937042 -0.638661 3.210335 33.209690 5.070128 3.959821 -0.709801 -7.099002 0.274986 -0.267421 0.040806 -0.806341 0.780559 0.075508 0.538505 0.373692 -0.140717 -4.776027 2.418915 -0.944138 -1.029419 0.707528 14.399861 0.009676 -0.557325 0.178543 0.568182 0.814972 0.136537 7.483667 3.717680 -9.406837 -3.278350 4.567672 12.435507 -7.474792 6.227635 24.650534 -3.096117 -13.722536 1.924549 8.107860 -21.527048 -9.606344 19.553572 -18.304516 -15.632386 -59.704826 -77.050789 44.409248 39.375587 -26.958700 -16.423458 -0.267279 -0.001405 0.087542 0.340513 -0.432183 0.490210 -13.110203 21.245829 -12.729794 24.303730 64.399689 12.467034 -46.927135 45.180073 -24.919319 -0.739410 -0.260204 -0.298586 0.642587 0.111272 0.166142 +4.852282 166.008621 -0.355108 2.405284 33.847500 4.986825 4.808879 -0.743719 -7.914105 1.202046 -0.333014 0.483440 -0.807180 0.775475 0.071905 0.575853 0.433174 -0.115036 -4.165576 2.212433 -0.919981 0.230435 0.431386 13.634420 -0.003064 -0.576829 0.181055 0.601705 0.811189 0.155496 7.609995 3.478138 -9.731476 -3.102810 4.281628 12.252445 -6.982843 5.896212 24.948536 -2.947755 -13.687493 1.699193 7.137354 -21.073893 -9.711421 17.436028 -16.506262 -14.743447 -72.680977 -74.272087 53.267750 41.411968 -31.998646 -19.207521 -0.285676 0.010030 0.063321 0.360609 -0.419922 0.499057 -13.027251 20.394306 -12.891348 34.501976 64.344765 19.099611 -47.908665 49.015976 -27.805302 -0.756503 -0.283991 -0.275118 0.641048 0.091051 0.171695 +4.095486 165.900436 -0.024518 1.769227 33.683697 5.158602 5.985386 -0.606450 -8.480288 1.259977 -0.313284 0.189739 -0.865306 0.817283 0.056830 0.586940 0.437726 -0.076280 -3.764702 2.160793 -1.428794 1.191885 0.218834 13.231978 -0.008952 -0.580450 0.172351 0.627847 0.815678 0.158247 7.201216 3.339205 -10.041555 -2.972286 3.987144 11.928468 -6.350002 5.627696 24.860329 -2.910725 -13.472461 1.538499 6.097837 -20.417250 -10.162145 16.063993 -14.072212 -14.076571 -81.620674 -70.282127 57.399010 42.221367 -37.094517 -21.832954 -0.320447 -0.038487 0.086913 0.376605 -0.415515 0.483393 -13.495538 19.350491 -13.298965 45.798290 63.360043 26.231855 -46.811165 53.752232 -30.072666 -0.790140 -0.265427 -0.305028 0.673871 0.100981 0.143754 +3.438848 165.760529 0.300029 1.144738 33.025787 5.307882 7.033484 -0.448961 -8.729427 1.381562 -0.301370 -0.251613 -0.877875 0.818331 0.044097 0.596842 0.448076 -0.057899 -3.291155 2.121921 -1.888854 1.963012 0.078161 12.697372 -0.016969 -0.572665 0.162653 0.636253 0.804818 0.161538 6.976700 3.347194 -10.208448 -2.928607 3.909959 11.683503 -5.986039 5.510717 24.604748 -2.745797 -13.007541 1.366728 6.285728 -19.888689 -10.660829 14.415115 -12.292968 -13.341600 -85.224579 -66.551514 57.041687 41.779133 -42.537186 -23.895697 -0.321497 -0.045966 0.100342 0.370424 -0.403293 0.473996 -13.231837 18.825428 -13.634550 54.367344 61.988094 31.261580 -43.298069 57.807617 -30.236252 -0.792365 -0.257303 -0.306645 0.674957 0.100598 0.134627 +2.931377 165.649948 0.509723 0.669527 32.429909 5.372944 7.841229 -0.380284 -9.006553 1.467680 -0.304590 -0.109049 -0.890625 0.816625 0.032260 0.605173 0.445830 -0.034567 -2.892600 2.141472 -2.302336 2.423281 -0.002901 12.440843 -0.029012 -0.555611 0.155990 0.633152 0.785317 0.164586 6.744302 3.348310 -10.215914 -2.882294 3.829966 11.536366 -5.658938 5.414783 24.333467 -2.706018 -12.687343 1.444749 6.532473 -19.482269 -11.222239 13.231344 -11.151945 -12.730559 -86.726524 -63.624542 55.535744 40.800503 -47.029503 -25.299522 -0.311934 -0.059239 0.130391 0.354695 -0.384995 0.464434 -12.893551 18.718836 -13.714771 59.558746 60.562210 33.678078 -40.230492 60.605011 -29.822653 -0.792353 -0.241202 -0.310784 0.672523 0.098763 0.118684 +2.266824 165.460464 0.728210 0.092142 31.597691 5.424376 8.836014 -0.350310 -9.512893 1.626200 -0.317067 0.738954 -0.897748 0.795198 0.014435 0.604065 0.421635 0.001174 -2.476802 2.180535 -2.854814 3.073027 -0.122512 12.143336 -0.047730 -0.509152 0.148696 0.605717 0.736376 0.160575 6.412073 3.356744 -9.996611 -2.835008 3.732319 11.412697 -5.244916 5.289596 23.673195 -2.849306 -12.387654 1.799806 6.992700 -18.997723 -12.095221 11.217264 -10.980042 -11.968382 -85.918465 -59.576199 50.509739 36.548660 -52.498924 -25.223112 -0.278501 -0.088753 0.191059 0.313190 -0.348340 0.441471 -11.630080 19.760973 -13.522481 63.401157 57.686375 33.489197 -32.438881 64.026749 -26.379099 -0.777157 -0.200458 -0.316274 0.658965 0.095432 0.087940 +1.581632 165.189804 0.931117 -0.346052 30.225321 5.750088 9.531106 -0.300225 -10.131926 2.119071 -0.325227 1.347871 -0.878593 0.754624 0.003394 0.570500 0.358994 0.024517 -2.025930 2.525628 -4.155605 3.312904 -0.146578 12.885932 -0.056367 -0.451923 0.144641 0.543078 0.674624 0.147494 5.965568 3.657798 -9.588206 -2.725786 3.915745 11.112229 -4.736913 5.366370 22.351368 -3.014244 -12.278728 2.694350 7.286094 -18.560572 -12.151581 9.155830 -11.925589 -10.879488 -84.275963 -54.997200 43.980423 28.727808 -57.309170 -22.576441 -0.234277 -0.117662 0.250222 0.264371 -0.313926 0.406452 -10.244849 21.932104 -13.108867 65.382286 53.725140 30.628954 -18.825352 65.762871 -18.167976 -0.738716 -0.151958 -0.319804 0.623572 0.095499 0.054250 +0.876000 164.962646 1.251027 -0.999998 29.335575 5.424058 10.527983 -0.171201 -10.518970 2.311136 -0.339245 2.378149 -0.825436 0.665377 -0.006380 0.596336 0.362738 0.100848 -1.173438 2.781909 -4.656137 3.620914 -0.168552 13.683772 -0.110414 -0.373355 0.135275 0.492918 0.564564 0.156979 5.869252 3.727466 -8.864503 -2.668628 3.966125 11.067311 -4.468282 5.249524 21.111616 -3.081929 -12.207443 3.958512 7.653275 -17.707989 -12.922266 5.672904 -13.086706 -10.138650 -80.174736 -50.558403 36.178272 14.291852 -61.110950 -14.655278 -0.146614 -0.120485 0.323428 0.184229 -0.223386 0.391120 -7.790674 24.402287 -12.775517 65.683685 49.101234 25.930243 1.063916 64.972542 -5.279998 -0.680986 -0.120330 -0.279121 0.562519 0.044203 0.024809 +0.234245 164.796951 1.590622 -1.545002 28.503132 4.917855 11.255604 -0.112813 -11.187887 2.554923 -0.356537 4.445276 -0.768865 0.547068 -0.029979 0.592443 0.356620 0.158759 -0.336017 2.999358 -4.896440 3.812555 -0.206337 14.648819 -0.159455 -0.259794 0.131750 0.424873 0.443809 0.144621 6.138334 3.888362 -7.623950 -2.718828 4.163181 10.921990 -4.609787 5.295933 19.414034 -3.299735 -12.379153 6.243906 8.549666 -16.876646 -14.212322 2.163591 -14.333405 -9.709208 -75.590454 -45.950649 28.556053 -5.795544 -61.292072 -2.159915 -0.054062 -0.168231 0.410493 0.090287 -0.120858 0.352537 -4.063213 26.283182 -11.405672 66.063904 43.012012 19.783836 18.945408 61.808441 5.129745 -0.612648 -0.037668 -0.241363 0.516014 0.010772 -0.004653 +-0.403436 164.440872 1.904445 -2.046311 27.653175 4.539516 11.724346 -0.073588 -12.399853 3.162879 -0.415166 7.392632 -0.672674 0.418927 -0.035707 0.608762 0.372285 0.222884 0.397444 3.299001 -5.284660 4.084406 -0.221023 15.640098 -0.218023 -0.160060 0.132093 0.354525 0.324163 0.157174 6.143893 3.934645 -6.121440 -2.699832 4.324343 10.455042 -4.652387 5.300210 17.206573 -3.460623 -12.583629 8.459460 9.184999 -16.207094 -14.927953 -1.505674 -15.215812 -8.888121 -71.796814 -40.839802 21.651861 -23.209408 -57.960960 7.782998 0.042970 -0.176965 0.470766 0.003347 -0.010367 0.334550 -0.510126 27.831076 -9.719409 65.360329 37.274128 13.784561 27.870729 55.404690 8.450658 -0.531611 0.012753 -0.169966 0.445913 -0.045909 -0.014322 +-1.049809 164.093292 2.234870 -2.233043 27.238579 3.961143 11.760059 -0.163287 -13.844517 3.857262 -0.544328 11.236992 -0.609022 0.298193 -0.070127 0.655837 0.422302 0.289971 0.990264 3.529787 -5.217776 4.242348 -0.228390 16.699554 -0.288210 -0.073266 0.122675 0.313232 0.196006 0.182494 5.940618 3.663647 -4.339733 -2.750357 4.217844 9.962990 -4.756522 5.125760 15.130462 -3.696817 -12.523713 10.992363 9.895925 -15.424960 -16.279505 -5.669021 -16.076023 -8.397373 -67.712822 -36.101723 15.293859 -30.137659 -50.419628 9.602019 0.141062 -0.167769 0.544226 -0.088092 0.106709 0.319358 3.041803 29.458523 -8.241609 64.120483 32.167873 8.529281 27.684877 45.489082 5.932588 -0.474296 0.054013 -0.093745 0.374274 -0.096529 -0.028182 +-1.792906 163.759460 2.473819 -2.526578 26.390026 3.281994 11.859721 -0.398713 -15.907858 4.322669 -0.720167 16.379829 -0.576837 0.201797 -0.107915 0.706499 0.483274 0.362983 1.691269 3.903660 -5.586570 4.314372 -0.212810 18.413666 -0.347105 0.000672 0.105034 0.303264 0.083556 0.191757 5.669950 3.361036 -2.416411 -2.743640 4.133983 9.466788 -4.766204 5.008610 13.434272 -3.972103 -12.054435 12.986801 9.888752 -14.380226 -17.601641 -9.669702 -15.824588 -8.754024 -64.464470 -32.356384 10.911187 -30.276041 -40.833458 7.347875 0.219656 -0.172996 0.604624 -0.165769 0.204699 0.300488 6.769095 29.729076 -6.881930 63.583786 27.953762 4.900280 24.332163 36.803856 3.119418 -0.431472 0.088738 -0.041413 0.331128 -0.141005 -0.046751 +-2.590592 163.491791 2.530944 -2.978992 24.742067 2.354896 12.045663 -0.707246 -17.998175 4.633310 -0.932183 22.216169 -0.580952 0.124310 -0.156029 0.754247 0.531115 0.438724 2.318411 4.542555 -6.405538 4.740817 -0.267876 21.177885 -0.401851 0.084192 0.084814 0.300761 -0.022304 0.185894 5.319794 3.151179 0.003651 -2.663121 4.167975 8.904583 -4.675383 5.063518 11.740530 -4.406235 -11.455246 15.146665 10.427155 -13.344041 -19.584890 -13.915477 -14.979415 -8.975922 -61.607368 -28.843891 7.250041 -27.536211 -33.652313 4.740300 0.295767 -0.204325 0.690821 -0.249960 0.294306 0.273039 10.796494 29.657585 -5.520434 62.738575 24.077337 2.029039 20.597664 28.916431 1.261694 -0.403661 0.144232 -0.017180 0.312105 -0.170763 -0.080729 +-3.360403 163.146057 2.629056 -2.938291 23.196104 1.665060 11.743255 -1.365583 -20.472963 4.670496 -1.176808 28.744678 -0.593355 0.094028 -0.184494 0.759990 0.528423 0.452361 2.454143 4.989292 -7.128467 5.086215 -0.372964 23.673584 -0.425461 0.140258 0.071171 0.288516 -0.060632 0.171416 4.127890 3.104728 2.044532 -2.478197 4.114188 8.424778 -4.044780 5.023692 10.357756 -5.493556 -10.132643 16.806961 12.063702 -12.761723 -20.664846 -15.978810 -13.230397 -9.054479 -61.277134 -26.025434 4.431917 -21.489691 -30.057558 1.932083 0.343104 -0.232048 0.758958 -0.305309 0.333233 0.257443 14.737449 28.680328 -4.591903 60.852917 20.876347 0.473342 17.325766 20.632584 0.450206 -0.386390 0.195444 -0.025037 0.315633 -0.166996 -0.097865 +-4.031923 162.546143 2.692072 -3.139272 21.789230 1.088092 11.549229 -2.144103 -23.743189 4.734555 -1.493840 35.868851 -0.587350 0.067222 -0.196489 0.758475 0.518299 0.470893 2.479411 5.563029 -8.446764 6.035028 -0.702205 26.933628 -0.440072 0.178666 0.061357 0.271258 -0.097874 0.161634 2.955367 2.870569 4.298859 -2.124471 3.861637 7.741437 -3.255532 4.744660 8.609985 -6.378093 -9.075284 17.438549 12.287344 -12.162248 -21.043112 -18.055866 -10.573992 -9.369792 -60.906883 -23.154047 1.943765 -16.244444 -26.982914 -0.032990 0.376918 -0.243729 0.795665 -0.343021 0.360711 0.243796 17.573069 26.370966 -4.479882 58.671471 18.371773 -0.064664 14.899653 12.588306 0.298212 -0.364035 0.222130 -0.025561 0.306315 -0.171456 -0.112915 +-4.530951 161.683258 2.857551 -3.721910 20.571373 0.405763 11.584590 -2.809723 -27.204296 4.597153 -1.777532 42.993851 -0.596537 0.064302 -0.204855 0.740473 0.484392 0.472920 2.781845 6.112828 -9.514110 7.276214 -1.195430 30.066996 -0.437875 0.197874 0.062607 0.248340 -0.114336 0.153702 2.887526 2.501115 6.548411 -1.863120 3.751830 6.986165 -3.113288 4.678326 6.820383 -6.980174 -8.374520 17.448805 12.196870 -11.864803 -21.240942 -19.825966 -8.055820 -9.822625 -59.771877 -20.386696 0.043366 -12.204634 -23.521408 -1.211346 0.388413 -0.262002 0.826478 -0.359661 0.365460 0.228310 18.780666 23.616423 -4.681273 56.686462 16.278784 -0.600133 12.053510 6.484162 0.243022 -0.358833 0.247507 -0.038983 0.301182 -0.160750 -0.131050 +-5.038999 160.985016 3.152823 -4.164714 18.779064 -0.571429 11.651412 -3.189358 -29.927025 3.951278 -1.723227 49.565891 -0.585724 0.046345 -0.199193 0.727997 0.464540 0.485919 3.089249 6.575175 -9.795017 8.262147 -1.562730 32.450603 -0.447486 0.230806 0.058465 0.227480 -0.131548 0.140561 2.905967 2.278013 9.153730 -1.862588 3.990889 6.227502 -3.481675 4.923924 5.023766 -7.037124 -7.792000 17.676662 12.762646 -11.455729 -21.567152 -20.872562 -6.144718 -9.970915 -57.116722 -17.528547 -1.568299 -9.404504 -20.669231 -1.741714 0.410909 -0.283389 0.853394 -0.384777 0.383264 0.220238 19.181568 20.903532 -4.870619 54.449150 14.406320 -1.301590 9.243716 2.090031 0.278573 -0.337335 0.272931 -0.047898 0.303888 -0.166358 -0.140697 +-5.721070 160.578217 3.626643 -4.612236 16.427341 -2.135710 11.820450 -3.107033 -31.206917 3.091653 -1.322016 54.947258 -0.626754 0.048919 -0.216443 0.718806 0.443222 0.517402 4.185810 6.984067 -8.841696 8.102322 -1.426917 33.979382 -0.460147 0.266863 0.053371 0.220950 -0.153298 0.122410 2.427021 2.401033 11.749820 -1.927197 4.383028 5.716813 -3.726162 5.376480 3.741900 -6.367495 -7.498810 18.583605 13.039213 -10.518732 -22.383707 -21.309656 -4.651912 -10.035110 -53.589840 -14.920925 -2.754882 -7.078250 -18.959539 -2.059306 0.415850 -0.343465 0.913075 -0.405832 0.405266 0.196802 18.751753 18.903433 -4.866766 51.884148 12.727719 -2.065844 6.672866 -0.804184 0.376527 -0.345897 0.323400 -0.083478 0.327273 -0.157800 -0.177928 +-6.412808 160.304092 4.112237 -4.742250 14.785318 -3.866420 11.541334 -3.234601 -32.209484 2.247242 -0.883049 59.591805 -0.645862 0.057845 -0.233904 0.700061 0.416020 0.543019 5.047765 7.111754 -7.223330 8.218668 -1.401028 34.957157 -0.463283 0.285419 0.046263 0.203705 -0.170998 0.126565 1.404873 2.644516 14.223445 -1.885231 4.638927 5.455352 -3.553349 5.662379 2.828120 -5.478572 -7.589102 19.147963 12.737132 -9.688244 -22.674809 -21.496178 -3.338287 -9.826394 -49.896580 -12.431218 -3.733506 -5.174586 -18.959841 -2.288249 0.397207 -0.381450 0.942090 -0.406944 0.421878 0.164374 18.211502 17.283218 -4.631820 48.264683 11.044409 -2.834854 4.661848 -2.397516 0.448268 -0.348293 0.359857 -0.096127 0.325584 -0.143053 -0.205678 +-6.928055 160.086761 4.571081 -5.080117 13.542512 -5.808462 11.198509 -3.444896 -32.859943 0.999826 -0.218608 63.356174 -0.663429 0.060625 -0.245815 0.696588 0.411216 0.562385 5.840366 7.123978 -5.370850 8.698271 -1.541639 35.842030 -0.474441 0.292967 0.043815 0.198753 -0.183775 0.134869 1.130462 2.583256 16.295437 -1.830120 4.790107 5.639744 -3.595851 5.847186 2.595757 -4.652845 -7.310275 19.085495 12.422848 -8.621764 -23.338688 -20.916506 -2.140730 -9.444902 -46.766697 -10.292544 -4.396543 -3.669480 -19.995323 -2.481628 0.384241 -0.401387 0.966884 -0.406327 0.438743 0.148852 16.610487 15.358989 -4.852176 44.734409 10.001855 -3.376023 3.274905 -2.787215 0.446029 -0.358763 0.379680 -0.103430 0.324597 -0.137116 -0.226226 +-7.445780 159.876572 5.082046 -4.873990 13.022504 -7.250898 10.048257 -3.977962 -33.546955 -0.350746 0.582151 65.759186 -0.655742 0.068646 -0.232701 0.684207 0.395246 0.565436 5.888405 7.001862 -3.791795 9.446332 -1.827027 36.441429 -0.471601 0.287115 0.052007 0.186085 -0.173529 0.141450 0.411803 2.723772 17.395706 -1.855618 4.776449 6.162052 -3.440972 5.829131 2.923939 -4.101944 -7.133761 18.307856 11.991088 -8.035526 -23.165541 -19.417786 -0.824710 -8.871023 -44.519711 -8.417058 -4.978661 -1.524055 -21.865860 -2.850051 0.367466 -0.405771 0.961909 -0.391070 0.435149 0.148666 14.722197 13.643157 -4.894085 41.189999 9.011080 -3.776797 2.086179 -2.738231 0.412427 -0.360218 0.379198 -0.106974 0.322193 -0.137707 -0.229997 +-7.978439 159.790924 5.635437 -4.809546 12.073950 -8.736429 9.394713 -3.925914 -33.527271 -2.189096 1.901391 66.879860 -0.654295 0.069118 -0.219790 0.659468 0.379724 0.552277 6.313759 7.036048 -2.154211 9.629060 -1.800329 36.975513 -0.459036 0.281753 0.066804 0.178455 -0.158759 0.129122 -0.323338 3.194349 18.095259 -1.827985 4.958994 6.899821 -3.158443 6.019390 3.627603 -3.309435 -7.412144 17.305094 11.513452 -7.628661 -23.046267 -17.866680 0.381365 -8.430048 -42.091728 -6.959424 -5.241391 0.621886 -23.314865 -3.173356 0.347769 -0.422449 0.949155 -0.371875 0.420659 0.146335 12.663950 12.007515 -4.618950 37.429699 7.834501 -4.095014 1.314404 -1.346673 0.306888 -0.367366 0.384559 -0.120845 0.332854 -0.132252 -0.233317 +-8.498578 159.830307 6.232878 -4.905817 10.690448 -10.232709 8.813299 -3.516993 -32.624908 -4.000945 3.209200 66.177353 -0.628822 0.058627 -0.204224 0.642016 0.366629 0.535934 7.012474 7.160951 -0.450217 9.502440 -1.554054 37.370792 -0.447925 0.280693 0.073057 0.165153 -0.149896 0.122007 -0.181530 3.576280 18.614855 -1.929441 5.403606 7.652115 -3.457149 6.456235 4.370292 -3.180257 -7.459258 16.531399 11.955357 -7.746142 -22.854734 -16.217678 1.189944 -7.740199 -39.297939 -5.592618 -5.362935 2.573493 -25.246054 -3.504770 0.349338 -0.411427 0.929805 -0.367434 0.409310 0.149344 11.004084 10.558630 -3.919111 33.727859 6.368999 -4.323321 0.380682 0.369494 0.223897 -0.353273 0.377183 -0.118240 0.325865 -0.135512 -0.223299 +-9.004461 159.945602 6.838213 -4.764175 9.472632 -11.389778 8.194818 -3.203891 -32.080097 -6.308816 4.726672 64.876518 -0.594184 0.045811 -0.180859 0.635236 0.366382 0.513613 7.542616 7.199426 1.087874 9.245399 -1.267772 37.488579 -0.435391 0.260886 0.083774 0.159656 -0.134604 0.119195 -0.259709 4.182143 18.623560 -2.098221 5.970319 8.501646 -3.703206 6.969938 5.385630 -2.635448 -7.721590 15.207582 12.445002 -7.977115 -22.183935 -14.880594 1.646604 -7.528221 -35.811028 -5.224490 -5.009884 4.472164 -26.187166 -3.699622 0.350936 -0.371288 0.891654 -0.353397 0.387704 0.166744 10.114367 8.734211 -3.147747 30.044931 4.500038 -4.546605 -1.424486 2.797348 0.078395 -0.344060 0.341090 -0.107309 0.308501 -0.148347 -0.206307 +-9.464327 160.107834 7.399134 -4.638529 8.865036 -12.056458 7.228813 -3.230319 -32.151878 -8.541168 5.885347 62.703785 -0.555931 0.053639 -0.153522 0.609414 0.348818 0.467438 7.763189 7.193855 2.031472 9.502087 -1.262183 37.493080 -0.408380 0.224220 0.093881 0.148360 -0.095332 0.124063 -0.292985 4.645823 18.018602 -2.202692 6.297347 9.379336 -3.796278 7.270170 6.604698 -2.245090 -7.906760 13.372962 12.713310 -8.492113 -21.010517 -13.608711 1.922604 -7.252903 -32.840405 -4.936044 -4.726596 7.798020 -27.078276 -4.277680 0.330077 -0.326625 0.833062 -0.320507 0.348671 0.181711 9.330679 7.079579 -2.544061 25.858721 3.136989 -4.277082 -2.185851 3.598872 0.036887 -0.335863 0.301582 -0.096241 0.291781 -0.144004 -0.177700 +-9.850870 160.419327 8.055057 -4.668190 8.392828 -12.915040 6.143889 -3.214820 -31.367960 -10.638514 6.606496 58.815426 -0.540175 0.060363 -0.146239 0.596673 0.333300 0.454337 8.259864 7.206565 3.228472 9.769401 -1.242452 37.568943 -0.395849 0.203685 0.091858 0.138729 -0.085013 0.131284 0.298186 4.796818 17.381380 -2.475327 6.585726 10.201623 -4.377612 7.573607 7.831286 -1.571793 -8.462477 12.707538 12.794375 -8.827060 -20.202139 -12.766110 1.656136 -6.799743 -29.322397 -4.287319 -4.482095 11.376641 -27.964632 -5.002304 0.317255 -0.298695 0.806718 -0.304854 0.330211 0.180226 7.995950 6.170955 -1.583618 22.531973 1.801779 -3.888522 -2.336093 3.534618 0.079791 -0.331641 0.278165 -0.088712 0.271598 -0.139880 -0.171659 +-10.258888 160.899261 8.780128 -4.515129 8.508290 -14.171170 4.724641 -3.417014 -29.568516 -12.679696 6.892889 53.679901 -0.542896 0.079948 -0.150197 0.576519 0.307418 0.444044 8.547130 6.856709 5.327373 10.324254 -1.367736 36.719761 -0.389933 0.207023 0.087851 0.123648 -0.071947 0.140988 0.205218 5.100698 17.009731 -2.506179 6.642416 11.258969 -4.329958 7.734841 9.163054 -1.460240 -8.582478 12.430688 13.390949 -8.933520 -20.630688 -11.434558 1.256941 -6.365737 -26.768579 -3.896862 -4.375902 15.567303 -28.356167 -5.987316 0.298042 -0.308146 0.810638 -0.299096 0.326829 0.166893 6.794379 5.634328 -0.460415 18.499191 0.520377 -3.301985 -1.353282 2.821591 0.201188 -0.332234 0.297272 -0.091726 0.273853 -0.118369 -0.171647 +-10.613203 161.235306 9.647246 -4.647935 8.156320 -15.108036 3.612535 -3.238226 -27.646391 -14.134160 6.781410 48.175400 -0.587231 0.127416 -0.160943 0.540394 0.254167 0.424194 9.165415 6.904548 6.592752 10.859378 -1.441973 36.782459 -0.369400 0.208376 0.081467 0.115114 -0.043592 0.129077 0.849933 5.252676 16.002842 -2.686818 6.808344 12.135622 -4.747991 8.073049 10.572889 -1.661015 -8.504340 12.417289 14.038247 -9.160443 -20.928003 -10.109330 1.281690 -6.068034 -24.055748 -3.332074 -4.221080 19.610655 -29.577295 -7.185842 0.270424 -0.346844 0.833003 -0.290987 0.301251 0.144569 5.606927 4.894911 0.205645 14.801491 -0.173862 -2.729801 -0.228601 1.499159 0.287694 -0.349434 0.331402 -0.133159 0.302040 -0.075991 -0.186777 +-10.971545 161.485229 10.616828 -4.666320 8.091014 -15.454363 2.215467 -3.202193 -26.107677 -14.568086 6.133189 42.664192 -0.640263 0.188589 -0.171176 0.506537 0.205565 0.380487 9.456243 7.161919 6.923061 11.556711 -1.607391 37.258102 -0.340074 0.188872 0.077757 0.120177 0.004275 0.116288 1.205187 5.488316 14.241652 -2.874127 6.890341 12.829988 -4.989864 8.338240 12.124058 -2.303243 -8.041579 12.304311 14.657230 -9.638011 -20.747490 -8.696290 1.593258 -6.027452 -21.449450 -3.081878 -3.912217 23.158499 -29.773090 -8.086489 0.238096 -0.369093 0.842276 -0.272110 0.257303 0.136079 5.142882 3.800783 0.207637 10.800345 -0.143235 -2.115229 0.981255 0.112588 0.285438 -0.377984 0.348321 -0.179623 0.335737 -0.027293 -0.191795 +-11.274673 161.662460 11.509485 -4.990741 8.164786 -15.865658 1.043461 -3.087590 -24.173313 -14.748280 5.222101 36.373734 -0.683668 0.250060 -0.168607 0.465346 0.141514 0.348504 9.717762 7.497554 6.983899 12.795793 -2.025599 38.039116 -0.318883 0.179148 0.078920 0.107374 0.051464 0.109039 2.012276 5.423952 13.253212 -3.071696 6.888405 13.184701 -5.539055 8.461892 12.861990 -2.746953 -7.700154 12.335080 14.982339 -9.958453 -20.515394 -7.200118 1.981705 -5.887343 -18.871796 -2.684505 -3.586296 26.492111 -28.849470 -8.599340 0.206723 -0.408235 0.863617 -0.254611 0.225739 0.129634 4.042210 3.053280 0.576295 8.387979 -0.728333 -1.799165 1.430843 -0.014770 0.295403 -0.399283 0.377449 -0.227601 0.371532 0.015396 -0.199687 +-11.546304 161.685944 12.419944 -5.450464 8.495954 -15.980325 -0.082884 -3.123311 -22.469206 -14.564780 4.167786 30.123472 -0.689176 0.276901 -0.158702 0.423207 0.082733 0.319910 10.045534 7.669461 6.689302 14.109858 -2.541101 38.632874 -0.294464 0.182988 0.081005 0.083759 0.081419 0.089145 2.597516 5.272849 12.169952 -3.216062 6.739087 13.135448 -5.925075 8.380306 13.078330 -3.344894 -6.949200 13.024004 15.546537 -10.218468 -19.273079 -5.055687 2.270844 -5.061776 -17.396822 -1.643019 -3.473819 29.611986 -28.293369 -9.116992 0.196602 -0.430118 0.866134 -0.248265 0.196712 0.122852 2.710117 2.595574 1.058337 6.394696 -1.610484 -1.632326 1.544837 -1.646039 0.288008 -0.392895 0.396230 -0.258273 0.388419 0.041031 -0.200705 +-11.785805 161.486267 13.405548 -6.061451 9.195331 -15.831934 -1.501298 -3.426906 -21.074863 -13.357212 2.985122 24.702532 -0.692994 0.303578 -0.143693 0.389224 0.033678 0.299776 10.340446 7.637849 6.225935 15.497364 -3.190669 39.035683 -0.274082 0.177473 0.089672 0.063842 0.109614 0.076712 2.998128 5.011083 10.540645 -3.275383 6.376997 12.872963 -6.085165 8.089252 13.292309 -3.519217 -6.618376 13.792407 15.296922 -10.437434 -17.670822 -3.321713 2.294897 -4.212504 -15.451892 -0.475142 -3.209919 31.677366 -27.372871 -9.164584 0.180383 -0.451834 0.862879 -0.231886 0.171063 0.122296 1.352678 2.111200 1.626733 4.355453 -2.467059 -1.297570 2.130320 -1.259604 0.279247 -0.393655 0.405323 -0.283223 0.402052 0.057760 -0.202901 +-12.051274 161.253021 14.408487 -6.603261 9.545199 -15.825659 -2.758981 -3.560180 -19.574232 -11.625344 1.991087 20.069298 -0.665384 0.288755 -0.130584 0.387868 0.038364 0.282512 10.582731 7.690639 5.792287 16.742950 -3.754691 39.623516 -0.274453 0.182917 0.097448 0.055862 0.121235 0.073051 3.591081 4.775169 9.176961 -3.424733 6.216575 12.704245 -6.480902 7.936376 13.571879 -4.004970 -5.928668 14.800937 15.995433 -10.609320 -16.790525 -1.665542 1.946813 -3.410395 -13.143541 0.400385 -2.866153 32.169460 -25.569466 -8.505278 0.191705 -0.443357 0.851276 -0.233687 0.170198 0.137078 0.621885 1.823771 1.944118 1.827471 -3.001677 -0.957822 2.640047 -2.206958 0.227907 -0.380538 0.402652 -0.271961 0.402752 0.051237 -0.184742 +-12.322012 160.850052 15.339103 -7.189845 9.813557 -15.963759 -3.706390 -3.512677 -18.148531 -9.916778 1.270711 16.204428 -0.637864 0.259861 -0.124064 0.398722 0.075254 0.257444 11.109981 7.739640 5.467600 17.587557 -4.148072 40.342140 -0.276966 0.172983 0.105461 0.068731 0.128764 0.070546 4.055035 4.415062 8.204596 -3.618448 5.985120 12.616246 -6.899271 7.640937 13.838318 -3.975210 -5.029077 15.042229 16.410110 -10.256472 -16.080297 -0.136868 2.209439 -3.057927 -10.736804 0.844927 -2.434971 32.167191 -23.359604 -7.573365 0.201447 -0.413948 0.823907 -0.228574 0.169179 0.158222 -0.264165 1.500163 1.611749 -0.304248 -2.315142 -0.683312 3.107346 -3.377892 0.129038 -0.375496 0.380101 -0.252288 0.396436 0.037889 -0.161639 +-12.538857 160.330368 16.155071 -7.762503 9.759625 -16.367041 -4.034342 -3.274439 -16.713995 -8.999638 0.903693 13.275191 -0.662607 0.286004 -0.145914 0.390860 0.053399 0.256722 11.935142 7.936140 5.336325 18.010324 -4.393959 41.526081 -0.267515 0.164279 0.089025 0.069417 0.126679 0.077573 4.779641 4.019969 7.819373 -3.762131 5.749017 12.606022 -7.364584 7.474751 13.956902 -4.216215 -4.234599 14.905465 16.374588 -9.882743 -16.095068 1.578741 2.796022 -2.966520 -9.473142 0.768060 -2.114720 32.032555 -21.322016 -6.828822 0.190352 -0.406092 0.834044 -0.228533 0.160055 0.140082 -1.883126 1.124859 1.292994 -1.650442 -1.648684 -0.590864 3.239905 -3.963721 0.092462 -0.380052 0.381701 -0.263474 0.386230 0.059140 -0.173989 +-12.769197 159.662827 16.990501 -8.287926 9.927526 -16.833183 -4.033185 -3.067184 -15.561388 -8.623568 0.755996 11.709300 -0.673577 0.305737 -0.146311 0.389679 0.038754 0.268602 12.661439 7.976710 5.375806 18.591475 -4.774434 42.587254 -0.262180 0.156926 0.082958 0.070027 0.129305 0.080348 5.197240 3.631244 7.733939 -3.852854 5.487174 12.597133 -7.647515 7.222457 13.924252 -4.091022 -3.659539 14.312510 16.001905 -9.378504 -15.880338 2.847676 3.333412 -2.945452 -7.813217 0.838075 -1.802546 32.203983 -19.784925 -6.276993 0.181334 -0.402622 0.836016 -0.223418 0.151377 0.134456 -3.128233 0.662186 1.185500 -2.829223 -1.517295 -0.430593 3.348774 -3.719612 0.078712 -0.382202 0.374753 -0.274060 0.383173 0.062286 -0.184350 +-13.008210 158.888672 17.714485 -8.330001 9.957185 -17.164865 -3.891643 -3.021239 -15.265197 -9.403909 0.900846 11.950698 -0.647356 0.275239 -0.131935 0.390185 0.059145 0.270892 12.436865 8.089232 5.304255 19.960138 -5.633677 43.946957 -0.261032 0.171944 0.096977 0.070410 0.127425 0.064011 5.324252 3.333356 7.641685 -4.170708 5.342016 12.541788 -8.132067 6.992322 13.855093 -4.123245 -2.979521 14.180596 15.774145 -8.761547 -15.667060 3.951105 3.313497 -2.394172 -5.163102 1.918368 -1.360538 31.343094 -18.887360 -5.635419 0.187795 -0.414962 0.818552 -0.222999 0.155543 0.139012 -3.774750 0.417719 1.397858 -4.096479 -1.912895 -0.166186 3.689137 -3.036293 0.077865 -0.369428 0.379664 -0.265328 0.392554 0.046167 -0.175291 +-13.338208 158.261139 18.312387 -7.826780 10.170585 -17.862226 -4.203766 -3.196898 -14.825809 -10.091387 1.055095 12.835079 -0.616163 0.214050 -0.131929 0.444946 0.141572 0.282222 11.478287 8.016389 5.764610 21.524401 -6.641990 44.930347 -0.284557 0.168425 0.106538 0.100806 0.095701 0.067029 4.610313 3.198848 8.023445 -4.533473 5.237597 12.838604 -8.313654 6.720548 14.093591 -4.039423 -2.456700 13.694516 15.934319 -8.169155 -16.077951 4.854856 3.296032 -2.243026 -2.315151 2.106153 -0.906347 29.448811 -17.323748 -4.749540 0.228575 -0.363391 0.802308 -0.238617 0.179106 0.169733 -3.731920 0.233858 1.292859 -5.112161 -2.066021 -0.036885 3.336510 -3.255187 0.040207 -0.364527 0.337668 -0.225992 0.367532 -0.000662 -0.160436 +-13.723080 157.632706 18.793112 -7.121253 10.531985 -18.186544 -4.260695 -3.446183 -15.352843 -11.534386 1.446088 14.706898 -0.570227 0.165423 -0.105773 0.470611 0.198730 0.283171 10.551448 7.893314 5.902022 22.302813 -7.336543 45.840302 -0.297606 0.173449 0.123018 0.116589 0.094797 0.057875 3.073220 3.358293 8.209476 -4.744444 5.136832 12.972291 -7.971725 6.424567 14.194328 -3.737944 -2.164491 13.171371 16.108210 -7.749840 -15.899817 5.731382 3.020430 -1.954063 0.465151 2.154952 -0.428763 27.217068 -16.087132 -3.961681 0.250958 -0.345510 0.771507 -0.239812 0.191843 0.200815 -3.211960 0.240280 1.175716 -6.022431 -2.161690 0.025215 3.156392 -4.088842 -0.047712 -0.349228 0.314280 -0.200142 0.370574 -0.041112 -0.134898 +-14.030610 157.259918 19.143858 -6.592206 10.240909 -19.057102 -3.434460 -3.264237 -15.230490 -13.532403 2.045304 16.499632 -0.551856 0.139127 -0.092752 0.491966 0.235377 0.289152 9.931205 7.788028 6.900056 23.022402 -7.871183 46.414806 -0.307767 0.174311 0.133989 0.129016 0.091692 0.055088 2.064168 3.528348 9.150163 -4.910594 5.235661 13.378220 -7.797083 6.389178 14.276160 -3.419210 -2.299507 12.188269 16.229305 -7.511631 -16.391148 5.789742 3.068403 -2.031269 2.835380 2.154497 -0.023702 26.051004 -16.586554 -3.816801 0.264727 -0.332984 0.760163 -0.241807 0.200023 0.219618 -2.497242 0.398254 1.184679 -6.591057 -2.424860 0.055855 3.158596 -4.734885 -0.128560 -0.347283 0.299110 -0.186866 0.372044 -0.065951 -0.124609 +-14.171595 156.933487 19.540659 -6.353044 9.415371 -19.082039 -2.199905 -2.846102 -15.510859 -15.509788 2.605154 17.334547 -0.538553 0.108959 -0.086098 0.525088 0.280027 0.303491 9.947392 7.863386 7.057430 23.056442 -7.970661 47.010242 -0.319354 0.181068 0.141923 0.149293 0.081143 0.045526 1.735502 3.752327 8.963759 -5.055427 5.500407 13.345960 -7.861662 6.612251 14.374300 -3.254130 -2.108151 12.072378 16.796209 -7.275157 -16.625864 5.668366 2.969278 -2.230520 4.069798 1.680057 0.132304 26.270441 -17.528345 -4.008077 0.289562 -0.316038 0.754805 -0.252802 0.208970 0.239755 -1.705533 0.194707 1.183935 -6.843164 -2.626917 0.219491 3.792644 -4.511384 -0.184095 -0.344831 0.281109 -0.175595 0.373390 -0.095911 -0.118615 +-14.310120 156.854355 19.641788 -6.376348 8.893342 -19.057211 -1.229423 -2.522139 -15.357548 -16.606953 2.785415 17.004843 -0.558100 0.148736 -0.103374 0.491119 0.225618 0.285350 10.435431 7.811507 7.003367 22.413446 -7.748784 47.337887 -0.314780 0.175398 0.123969 0.123129 0.088886 0.068763 1.815699 3.812340 9.163201 -5.085547 5.553216 13.219941 -7.927145 6.780885 14.084849 -3.655902 -2.285224 12.369410 16.903236 -7.623636 -16.768309 5.900065 2.361028 -2.219217 3.477397 0.895341 -0.016064 26.504028 -18.293598 -4.334065 0.266281 -0.324072 0.776435 -0.249641 0.207721 0.216053 -1.628961 0.383049 1.647285 -5.465694 -3.566809 0.060792 3.674902 -3.976267 -0.093138 -0.348287 0.304610 -0.185130 0.363247 -0.055847 -0.126876 +-14.375191 156.995682 19.562551 -6.484953 8.266230 -19.135204 -0.690552 -2.263261 -14.517349 -16.955652 2.631006 15.561074 -0.589233 0.190014 -0.115982 0.459007 0.166414 0.289427 11.040097 7.663756 7.134979 21.777348 -7.467365 47.370899 -0.304290 0.192719 0.107907 0.101133 0.093824 0.067390 2.112092 3.630659 9.536168 -5.167405 5.459273 13.233742 -8.115698 6.837215 13.866920 -4.260360 -2.236377 12.409307 17.142771 -7.847057 -17.424526 6.202000 1.857190 -2.381680 1.555007 -0.287408 -0.432220 26.827141 -18.519663 -4.659024 0.248269 -0.362111 0.807142 -0.256908 0.200660 0.182979 -1.685102 0.562694 2.063397 -3.754040 -4.032571 -0.064484 4.200025 -2.719692 0.010411 -0.349034 0.345750 -0.212681 0.377489 -0.018700 -0.147145 +-14.398546 157.302170 19.289284 -6.793901 7.878791 -19.172327 -0.803406 -2.253219 -13.635481 -15.883826 2.152753 13.820489 -0.614937 0.243773 -0.114223 0.415279 0.103309 0.258889 11.517089 7.314377 7.338673 21.419472 -7.320105 46.954151 -0.270968 0.168336 0.109150 0.085642 0.135478 0.063689 2.311306 3.393768 10.115484 -5.090553 5.254531 13.245630 -8.110356 6.662442 13.521987 -4.201078 -1.637134 11.857196 16.948696 -7.744476 -16.186363 6.481126 1.807885 -2.691044 -1.026267 -1.925356 -0.799904 26.896662 -19.123970 -5.044866 0.207140 -0.373712 0.800068 -0.226061 0.157184 0.169163 -1.534479 0.603735 1.959674 -1.537172 -3.777610 -0.342273 3.933936 -2.019085 0.079294 -0.363879 0.351008 -0.247020 0.386809 0.019835 -0.155328 +-14.439279 157.693924 18.954605 -6.986670 7.315241 -18.699711 -0.961043 -2.208764 -13.202392 -14.564507 1.686006 11.968073 -0.606289 0.250283 -0.091712 0.400672 0.092039 0.249615 11.614175 7.103593 6.981585 21.224133 -7.227644 46.577984 -0.256939 0.160631 0.123151 0.083043 0.159910 0.049123 2.201218 3.302735 10.348373 -4.909746 5.085827 13.087318 -7.856518 6.429253 13.164340 -3.938548 -1.188530 11.354896 16.469244 -7.364497 -15.220625 6.351259 1.954167 -2.725461 -3.412626 -2.873261 -0.945976 25.997648 -21.183775 -5.495074 0.192430 -0.382679 0.778344 -0.206314 0.135676 0.177166 -1.256353 0.563632 1.626116 0.892594 -3.231622 -0.653357 3.608182 -1.686814 0.105301 -0.365417 0.344464 -0.259478 0.402062 0.017901 -0.151415 +-14.365933 158.138412 18.603601 -7.495810 6.453617 -17.765280 -0.986510 -2.028461 -12.905587 -12.970312 1.166472 9.457721 -0.602859 0.255636 -0.088477 0.409610 0.092206 0.264427 12.007066 6.980643 6.232749 20.594732 -6.836505 45.949673 -0.262479 0.144549 0.119619 0.081127 0.153874 0.064547 2.632933 3.205266 10.285327 -4.560654 4.972835 12.574561 -7.589255 6.307287 12.560180 -3.681509 -1.032625 11.141140 15.622170 -6.963575 -14.742293 5.639156 1.985555 -2.895957 -6.700336 -4.034534 -1.208667 25.352171 -23.627840 -6.154997 0.188470 -0.361756 0.773928 -0.199145 0.137143 0.180202 -1.396793 0.603253 1.190646 3.956604 -2.464126 -1.092180 3.573009 -2.528329 0.078660 -0.366740 0.322445 -0.251896 0.382938 0.009540 -0.156602 +-14.356105 158.577118 18.106121 -7.891331 5.616909 -16.707088 -1.038863 -1.802781 -12.918028 -11.334343 0.765626 7.155252 -0.563200 0.216995 -0.084229 0.447742 0.145252 0.285479 12.216041 6.825730 5.474120 20.164080 -6.483178 45.036446 -0.273089 0.111050 0.121525 0.095101 0.124934 0.087404 2.341167 3.530588 10.308640 -3.887582 5.052749 12.077816 -6.654142 6.223885 11.990242 -2.464138 -1.317241 10.427986 14.437721 -6.324741 -13.786943 4.690553 2.173807 -3.396336 -9.275579 -6.174442 -1.186380 22.296011 -25.873808 -6.119763 0.196593 -0.287739 0.729604 -0.186558 0.143773 0.195417 -1.544602 0.495562 0.648046 7.137653 -1.726215 -1.438157 3.776860 -4.089069 -0.020733 -0.361225 0.253950 -0.204654 0.326911 -0.030071 -0.149602 +-14.215321 158.958664 17.503614 -8.382668 5.219317 -15.597998 -1.532654 -1.802671 -13.185382 -9.114792 0.383747 5.110231 -0.550915 0.200093 -0.096390 0.479667 0.183914 0.326947 12.052597 6.470433 4.705566 20.159279 -6.414818 43.695225 -0.290919 0.085088 0.115604 0.107265 0.084800 0.121962 2.162014 3.718744 10.174959 -3.101935 4.942400 11.654117 -5.554317 6.049561 11.634850 -0.930983 -1.712035 10.194112 12.484281 -5.139941 -13.407394 2.641463 1.490197 -4.106717 -11.139167 -7.997139 -1.177489 18.854153 -26.704941 -5.618512 0.187962 -0.247050 0.712372 -0.173090 0.168627 0.193514 -1.719518 0.568603 0.357677 10.001715 -1.212972 -1.662145 4.643026 -5.751441 -0.138964 -0.365632 0.212493 -0.169808 0.277734 -0.057646 -0.161671 +-14.037974 159.328674 16.699490 -9.027204 4.744779 -14.548042 -1.834996 -1.733656 -13.647279 -6.889219 0.114915 3.309836 -0.524321 0.135803 -0.085273 0.553670 0.280203 0.406310 11.977673 6.048143 3.933865 20.365271 -6.431501 42.296783 -0.331244 0.085103 0.126267 0.143234 0.024844 0.131496 1.957164 3.846817 10.438134 -2.151007 4.837667 11.290313 -4.242143 5.805895 11.173327 0.496606 -2.232753 9.864738 10.426703 -3.796636 -13.983381 0.913270 1.353712 -5.223752 -14.701874 -10.597493 -1.279086 15.743221 -26.208647 -4.987829 0.222932 -0.226788 0.704068 -0.182250 0.219037 0.219655 -2.448790 -0.074496 -0.085176 14.311878 -1.080026 -2.129186 3.667845 -4.527225 -0.033735 -0.359982 0.167045 -0.132422 0.252796 -0.138133 -0.169306 +-13.840364 159.646179 15.895675 -9.776383 4.059186 -13.215046 -1.823263 -1.599085 -14.620114 -4.978984 -0.023326 1.825259 -0.529056 0.102689 -0.093614 0.604510 0.347831 0.471339 12.011581 5.687165 2.887980 20.592323 -6.407331 40.697468 -0.358858 0.087499 0.127645 0.175376 -0.020692 0.138435 2.239821 3.759958 10.046341 -1.569953 4.691078 10.848043 -3.491640 5.583406 10.962569 1.769138 -2.739426 9.969313 8.666273 -2.647504 -14.892704 -1.436027 1.036598 -6.581644 -17.266937 -12.685010 -1.299336 12.923602 -25.313492 -4.355545 0.233338 -0.229518 0.706753 -0.186229 0.256771 0.223405 -1.956451 -0.521411 -1.048034 18.555513 0.041602 -2.587674 1.968000 -3.485270 0.080998 -0.366786 0.150112 -0.113797 0.244570 -0.181793 -0.185074 +-13.659189 159.917450 15.107999 -10.123203 2.627091 -12.215950 -1.639940 -1.305538 -15.035771 -3.632050 -0.074025 0.244632 -0.534666 0.068475 -0.135518 0.653835 0.406840 0.544688 11.738663 5.458891 2.501002 20.946465 -6.356446 39.155716 -0.397137 0.095535 0.097983 0.195685 -0.101240 0.171619 1.958084 3.950155 9.993382 -0.962064 4.607348 10.527426 -2.480434 5.447578 10.744049 2.818562 -3.179649 10.169446 6.974784 -1.446680 -16.642561 -3.630328 0.799495 -7.603771 -20.407801 -13.888970 -1.456517 10.679452 -25.084690 -4.031521 0.245982 -0.205878 0.723671 -0.209876 0.315023 0.196766 -1.488651 -0.430521 -1.875865 22.543802 1.385357 -2.937092 1.078595 -2.840028 0.137294 -0.361989 0.138753 -0.073214 0.198053 -0.206707 -0.210380 +-13.508257 160.085754 14.418826 -9.921177 0.429309 -11.025945 -1.522462 -1.031967 -15.446438 -2.604009 -0.066624 -1.350608 -0.555501 0.070501 -0.159216 0.671909 0.421145 0.586737 11.004803 5.515843 1.924380 21.285566 -6.297642 38.132904 -0.417411 0.086992 0.081938 0.203967 -0.137504 0.195586 0.761206 4.727621 9.494501 -0.323004 4.765357 10.057901 -1.034976 5.567124 10.391333 4.051054 -3.483506 10.728874 5.551555 -0.387897 -17.001297 -5.892351 -0.022687 -8.610061 -23.867548 -15.246643 -1.548837 8.653895 -23.296774 -3.633492 0.236323 -0.202818 0.742190 -0.208958 0.342896 0.180671 -0.240737 -0.049205 -2.362751 25.758085 2.082410 -3.302260 -0.158863 -2.434607 0.179976 -0.372734 0.132387 -0.065850 0.173663 -0.213200 -0.236007 +-13.336955 160.173843 13.622364 -9.872581 -1.958033 -10.419094 -0.974630 -0.763192 -15.773066 -2.127169 -0.062394 -2.083020 -0.560238 0.034634 -0.186074 0.720761 0.474156 0.653326 10.591419 5.524019 1.835879 21.385736 -6.156803 37.283363 -0.453897 0.104719 0.068437 0.220656 -0.200710 0.214201 0.246868 5.133430 9.404133 0.160709 4.869890 9.934151 -0.075491 5.603343 10.382166 4.942047 -3.348382 11.450862 4.746633 0.889198 -18.371925 -8.541239 -1.717255 -8.951467 -26.295155 -15.325187 -1.916689 7.033906 -22.497637 -3.423249 0.259060 -0.195746 0.771228 -0.234239 0.395154 0.169499 1.956504 1.080357 -2.437992 27.462528 2.755091 -3.295211 1.043740 -0.479981 0.071965 -0.369953 0.129946 -0.040088 0.145705 -0.245095 -0.259321 +-13.137746 160.093826 12.730692 -9.647944 -4.717923 -9.603690 -0.181527 -0.592949 -16.732410 -1.922405 -0.060226 -2.180478 -0.573406 0.038840 -0.196856 0.735534 0.484681 0.678446 10.065540 5.806950 1.165645 21.006548 -5.907564 37.174519 -0.467924 0.109972 0.061205 0.226874 -0.214063 0.225854 0.004381 5.561260 9.440401 0.346306 5.146581 9.712429 0.378251 5.841915 10.135528 5.383222 -2.770237 11.409024 4.639002 1.752362 -19.222498 -10.953382 -3.305969 -9.397245 -28.514326 -15.637279 -2.164821 5.665021 -21.511124 -3.250450 0.255333 -0.198069 0.789267 -0.239079 0.411382 0.162711 4.930441 1.781448 -2.727591 28.419796 3.227601 -3.387752 2.119611 1.880615 -0.043422 -0.377108 0.135304 -0.039138 0.142840 -0.247318 -0.272967 +-12.888702 159.950317 11.690556 -9.435866 -8.336448 -9.044202 1.072722 -0.350759 -17.867008 -1.701352 -0.055423 -1.565981 -0.570078 0.044278 -0.202251 0.739645 0.484156 0.699613 9.642530 6.390440 0.401400 20.297215 -5.556819 37.873341 -0.471934 0.105642 0.053451 0.223669 -0.227152 0.241272 -0.511208 6.070325 9.962725 0.767912 5.388580 9.476942 1.170743 6.043721 9.625716 5.392399 -2.009586 11.325860 3.590637 2.672496 -19.259977 -13.122442 -4.297865 -9.679485 -31.407284 -15.839343 -2.294109 4.222370 -20.115103 -3.025065 0.243795 -0.190079 0.785190 -0.234021 0.419163 0.151603 6.907000 2.738156 -3.273437 29.183681 4.394856 -3.306818 3.386668 3.407023 -0.105924 -0.373941 0.129223 -0.029048 0.126487 -0.248216 -0.281648 +-12.545887 159.692703 10.750896 -9.579888 -12.482688 -8.710219 3.218583 0.164389 -18.823792 -2.294463 -0.039032 -0.200836 -0.598475 0.079064 -0.198656 0.732407 0.456978 0.723299 9.919378 7.204762 -0.242160 19.012878 -4.946747 39.071743 -0.475799 0.115121 0.048912 0.220032 -0.218750 0.240670 -0.197150 6.413641 10.692559 1.198683 5.700399 9.260411 1.581454 6.399115 9.084744 4.879220 -0.716920 11.851513 2.745705 3.679646 -19.395247 -14.985984 -5.263210 -9.868348 -34.493706 -16.091789 -2.213836 2.355788 -18.341587 -2.734648 0.228040 -0.232483 0.813469 -0.231168 0.422047 0.142613 8.582987 3.859685 -4.011241 30.194662 5.973421 -3.219791 5.035597 4.872182 -0.108568 -0.381901 0.153516 -0.057304 0.151473 -0.238224 -0.301722 +-12.277743 159.336380 9.788832 -9.621915 -16.257168 -8.492223 5.581728 0.548239 -20.448727 -3.441711 0.032108 2.765704 -0.649798 0.130821 -0.215174 0.719918 0.422466 0.749807 10.243298 7.870256 -0.881705 17.446238 -4.341547 40.453072 -0.475809 0.117225 0.036306 0.219003 -0.215250 0.248608 -0.015302 6.352480 11.665519 1.357820 5.650978 9.115265 1.721152 6.421092 8.623117 4.457086 0.846030 12.155046 1.287119 5.082987 -20.030216 -17.033148 -6.029000 -10.108616 -36.442879 -16.019316 -2.198514 0.349033 -17.851665 -2.506887 0.191687 -0.277205 0.846225 -0.221250 0.421904 0.114733 10.546683 5.033948 -5.614567 31.639616 8.637599 -3.017914 5.724503 4.252343 -0.080797 -0.403582 0.184758 -0.088853 0.172117 -0.208333 -0.334773 +-11.929791 159.047577 8.945885 -9.481879 -19.985016 -8.062796 7.796534 0.922420 -22.435055 -4.939568 0.209307 6.174063 -0.666812 0.146424 -0.223765 0.715919 0.420337 0.742581 10.370801 8.495475 -1.841652 15.481376 -3.582494 41.885983 -0.477879 0.133934 0.034691 0.222963 -0.202073 0.244527 0.551531 6.038683 12.324843 1.319908 5.570701 8.872602 1.483746 6.370450 8.112102 2.867787 3.224009 13.106088 1.354752 5.982525 -20.309654 -17.359308 -6.610505 -9.838503 -39.501263 -15.943443 -2.191265 -0.601712 -17.903221 -2.519135 0.184742 -0.308019 0.863673 -0.226122 0.426409 0.110598 12.392279 6.264670 -7.094346 34.072922 11.061261 -2.913743 5.914622 3.737904 -0.079236 -0.407806 0.217524 -0.100409 0.201589 -0.189231 -0.333620 +-11.448876 158.742737 8.197535 -9.274545 -23.175203 -7.785938 10.007998 1.131527 -24.849091 -7.023811 0.599764 11.149457 -0.670079 0.126128 -0.241967 0.755516 0.456824 0.790589 10.364804 8.819472 -2.587156 13.743673 -2.977644 42.937664 -0.504013 0.154947 0.017147 0.238442 -0.243901 0.249530 1.156577 5.539341 13.141547 1.230909 5.455766 8.570706 1.167110 6.250221 7.549374 1.922059 5.131760 14.335105 0.781624 7.218653 -20.829351 -18.412113 -7.918836 -9.608155 -42.011936 -16.222061 -2.262578 -0.726578 -18.261301 -2.653229 0.212447 -0.302836 0.886735 -0.255388 0.460646 0.105881 13.953840 7.823244 -8.118277 36.925816 13.004215 -2.746341 5.865743 3.119009 -0.091559 -0.395417 0.217486 -0.086116 0.191793 -0.209862 -0.346154 +-10.889590 158.517548 7.413692 -8.762495 -25.924629 -7.754950 12.031774 1.131276 -27.485889 -9.645499 1.328093 17.197067 -0.687709 0.119248 -0.266042 0.790041 0.496253 0.813684 9.943075 9.045139 -3.406051 12.187231 -2.537788 44.153786 -0.521947 0.165835 0.006951 0.262374 -0.262313 0.254600 1.589427 5.226251 13.705013 1.158972 5.452733 8.432469 0.979250 6.246717 7.334709 1.036815 6.983210 15.751721 0.984053 8.138221 -21.077276 -19.032856 -10.142715 -9.630461 -44.503723 -17.551111 -1.831762 -1.091477 -17.844158 -2.690248 0.223094 -0.304052 0.905518 -0.270287 0.482230 0.104549 16.070225 9.397329 -8.833432 38.891705 14.483012 -2.578414 5.835265 2.930105 -0.111479 -0.401666 0.223817 -0.077578 0.196082 -0.214703 -0.351749 +-10.229075 158.476227 6.629466 -7.816001 -28.115036 -8.147283 13.419366 0.693598 -29.869659 -12.206682 2.305882 23.625994 -0.696405 0.056317 -0.297852 0.873517 0.614997 0.858728 8.771408 9.046077 -4.187751 11.085727 -2.365952 45.094135 -0.574014 0.196291 -0.001958 0.317981 -0.319456 0.255461 1.554944 5.041385 14.371879 1.189048 5.416692 8.521784 1.147369 6.143015 7.442298 -0.194363 8.499720 17.237143 0.886822 8.808413 -22.982040 -19.039608 -12.887521 -9.880662 -47.570629 -19.674337 -0.998168 -1.062973 -16.635492 -2.707341 0.277885 -0.302164 0.934549 -0.316259 0.547239 0.123153 17.732674 11.242092 -9.265613 40.413792 15.682255 -2.383039 6.131542 3.302848 -0.129522 -0.402671 0.227531 -0.042700 0.206322 -0.256617 -0.345801 +-9.636073 158.571884 6.016896 -6.691835 -30.089706 -8.750011 14.670211 0.031095 -31.673883 -14.979071 3.596771 29.695944 -0.718236 0.024334 -0.335466 0.932299 0.690109 0.911402 7.233939 8.810682 -4.688260 10.272268 -2.388019 45.652504 -0.609610 0.214794 -0.014848 0.356029 -0.372964 0.264123 1.305026 4.891948 14.583576 1.154468 5.291867 8.657742 1.334564 5.993772 7.777369 -0.631232 9.540623 18.960327 0.130144 9.759798 -24.206102 -19.518185 -15.832146 -10.050529 -49.407986 -21.665363 -0.200329 -1.556772 -16.551971 -2.694484 0.300610 -0.307333 0.961227 -0.342373 0.596212 0.118353 19.362965 13.120638 -9.314664 41.827682 16.515898 -2.339788 6.624511 4.969577 -0.176897 -0.410893 0.233801 -0.019914 0.203498 -0.279153 -0.359809 +-9.108415 158.779251 5.573061 -5.477449 -32.075066 -9.677759 15.671294 -0.764595 -32.850010 -17.560083 5.196311 35.689594 -0.738064 0.006293 -0.366415 0.974487 0.741309 0.969742 5.625000 8.470283 -4.934976 9.352080 -2.374818 46.169750 -0.639899 0.225438 -0.028207 0.380821 -0.420701 0.278680 0.932556 4.851438 14.410307 1.086872 5.197838 8.903420 1.533651 5.888756 8.391475 -0.234748 10.003583 20.866310 -1.149614 10.969938 -25.009699 -20.286894 -18.609407 -10.178786 -50.358410 -23.728495 0.546397 -2.814398 -17.875938 -2.616239 0.304100 -0.318012 0.982428 -0.353601 0.639846 0.105693 20.621862 14.892151 -9.138578 43.287216 17.228731 -2.406753 7.340977 7.993001 -0.253480 -0.419112 0.238936 -0.002798 0.194605 -0.297183 -0.381385 +-8.505656 159.232880 5.093085 -4.275481 -34.218761 -10.699747 16.894588 -1.436849 -33.462967 -20.510601 7.126741 40.893337 -0.768753 0.000108 -0.398985 0.997171 0.765775 1.027212 4.422439 8.145576 -5.102117 7.808385 -1.992654 46.386856 -0.658558 0.243981 -0.047508 0.397433 -0.464001 0.280237 0.548574 4.702779 14.729568 0.978264 5.056152 9.099132 1.566480 5.795266 8.751904 0.091444 10.723618 22.479464 -2.354585 12.248425 -26.003216 -21.443880 -21.453941 -10.138045 -50.662258 -25.681345 1.116512 -3.489121 -19.547783 -2.630942 0.300990 -0.345499 1.008927 -0.366877 0.671679 0.076758 22.205805 16.651075 -9.074614 43.962494 18.337772 -2.364227 8.833105 11.021660 -0.203839 -0.423237 0.258786 -0.003379 0.194872 -0.300714 -0.411882 +-7.834593 159.966415 4.643678 -1.882970 -36.433475 -12.618097 16.977129 -2.366022 -33.195255 -23.068577 9.127148 45.066254 -0.826644 0.006783 -0.446866 1.016415 0.779554 1.082392 2.403907 7.729887 -4.978648 5.499464 -1.208755 46.202560 -0.680634 0.256667 -0.071243 0.415049 -0.514808 0.288189 -0.894960 5.008406 14.773674 0.728998 4.814317 9.539832 1.880666 5.625733 9.502871 0.481985 11.132852 24.406157 -3.963163 13.447228 -27.493416 -21.919958 -24.452873 -9.874481 -50.519382 -27.605021 1.394769 -3.481914 -22.680683 -2.919984 0.293171 -0.381413 1.057725 -0.381508 0.706927 0.039973 23.551392 19.155375 -8.678759 44.427933 19.475800 -2.534384 10.078039 14.917957 -0.136241 -0.443249 0.286654 -0.014468 0.192930 -0.291066 -0.456353 +-7.165162 160.793503 4.283707 0.238823 -39.238861 -14.378939 17.246164 -2.741065 -32.197899 -25.600136 11.241257 48.281536 -0.828927 -0.003474 -0.459932 1.046581 0.800791 1.133092 0.858499 7.428174 -4.730891 3.079095 -0.211007 45.367607 -0.697090 0.261287 -0.081477 0.423085 -0.556403 0.300455 -1.830559 5.288857 14.921275 0.611014 4.816435 9.875745 2.063020 5.651507 9.983761 0.213365 11.375553 25.710402 -5.501446 14.038312 -27.795765 -22.714998 -26.952948 -9.265451 -49.609154 -29.469955 1.793366 -5.268327 -26.537363 -2.625034 0.303896 -0.376783 1.066818 -0.392220 0.732552 0.031906 24.831026 21.618864 -8.144290 43.932644 20.646214 -2.517233 12.358344 18.527437 0.213746 -0.438089 0.275954 0.001273 0.171888 -0.312142 -0.473910 +-6.430449 161.606766 3.940396 1.876936 -41.408436 -15.453056 17.315481 -3.309673 -31.762228 -27.458036 13.012508 51.162342 -0.853230 0.017257 -0.470488 1.040103 0.791094 1.137349 -0.158021 6.884166 -4.704592 0.910457 0.515511 44.064404 -0.694193 0.252056 -0.086085 0.427463 -0.553359 0.303073 -2.211656 5.232605 14.399217 0.448939 4.656695 10.410739 2.072017 5.548632 10.922960 0.120679 12.149110 26.049734 -6.363546 14.769971 -28.047478 -21.885748 -28.814566 -8.885612 -49.217857 -31.430677 2.167693 -6.195895 -32.240715 -2.587411 0.283281 -0.386881 1.072084 -0.381140 0.727265 0.021449 25.270052 23.226330 -8.199663 44.350948 22.273361 -2.195814 15.428885 21.894342 0.860539 -0.452317 0.280859 -0.011759 0.177549 -0.297239 -0.487329 +-5.631417 162.491837 3.606476 3.008605 -43.793907 -16.128222 17.358213 -3.807299 -31.181992 -28.127312 14.355082 54.328346 -0.875380 0.030412 -0.478622 1.045152 0.801579 1.140562 -0.503042 6.345408 -4.653802 -1.238565 1.208363 42.467804 -0.696775 0.241634 -0.084501 0.439878 -0.545771 0.308435 -1.805209 4.923957 13.687533 0.194250 4.627897 11.082767 1.639677 5.581228 12.179871 0.086009 13.153048 25.982771 -7.032184 15.516168 -28.798433 -20.668625 -30.623541 -8.528894 -48.476280 -33.652847 2.571884 -6.499969 -39.004627 -2.637658 0.265644 -0.395420 1.076154 -0.369095 0.727069 0.020652 25.220594 24.555351 -8.555973 45.347664 24.207422 -1.781312 18.345381 25.557941 1.650612 -0.470212 0.284291 -0.019050 0.188891 -0.289525 -0.492938 +-4.759070 163.480988 3.296902 4.000474 -46.216972 -16.110279 17.041389 -4.012347 -30.829884 -27.407703 15.105681 57.414116 -0.887821 0.055647 -0.475868 1.036110 0.781297 1.144281 -0.706903 5.986824 -5.174107 -3.264966 1.854724 40.227932 -0.678233 0.208492 -0.083553 0.442425 -0.537517 0.310133 -1.355690 4.766460 12.246209 0.064123 4.615983 11.587502 1.463282 5.535231 13.488696 0.044245 13.203000 25.498465 -8.423624 15.900200 -28.055286 -19.438356 -31.717064 -8.047983 -47.874111 -35.727654 3.130935 -5.793884 -45.148911 -2.987562 0.240502 -0.379545 1.054626 -0.341293 0.699712 0.016981 24.315844 26.448877 -8.999475 46.777725 26.329975 -0.899163 20.277107 27.449997 2.255914 -0.482816 0.254171 -0.031246 0.175106 -0.286093 -0.505863 +-3.919379 164.453705 3.035330 4.618347 -47.894962 -15.853466 15.937125 -4.265170 -30.084673 -25.190874 14.861521 60.253738 -0.912246 0.125652 -0.456237 1.006235 0.737047 1.116181 -0.879146 5.668768 -5.506497 -4.686450 2.204998 37.523163 -0.653045 0.161770 -0.074532 0.440689 -0.471368 0.322588 -0.624978 4.708740 10.677910 0.049026 4.637609 12.178946 1.260018 5.524060 14.939481 0.318657 13.213214 24.626966 -8.532291 16.065853 -26.863483 -17.165804 -32.795708 -7.951488 -47.850529 -38.542503 4.630060 -4.767030 -50.241539 -3.444657 0.179878 -0.383156 1.032963 -0.286382 0.654024 0.025608 22.603704 27.744493 -9.898866 47.679058 28.825258 0.351815 22.340576 29.293272 3.080029 -0.514913 0.238386 -0.062805 0.193268 -0.259166 -0.505391 +-3.137157 165.394684 2.850589 4.788627 -49.274307 -15.089492 14.558990 -4.433570 -29.314163 -22.124289 14.005825 63.133274 -0.924392 0.175187 -0.438430 0.987270 0.716609 1.096602 -0.808694 5.284151 -5.709283 -5.983040 2.418431 33.917595 -0.626072 0.105059 -0.069825 0.452400 -0.421861 0.330248 0.304352 4.579569 8.491406 0.017570 4.591809 12.866518 1.035248 5.328427 16.938099 0.759341 12.989155 23.195707 -9.210006 16.262569 -25.678915 -14.440363 -33.361832 -8.051211 -47.944576 -41.797501 6.582096 -2.172716 -55.054985 -4.706615 0.125628 -0.361458 0.986659 -0.230048 0.607496 0.035212 20.547213 28.646639 -11.131923 49.223793 31.833120 1.986602 23.129206 31.748959 3.673123 -0.540090 0.195796 -0.082153 0.195005 -0.248516 -0.502579 +-2.406451 166.210403 2.752489 4.892838 -50.037384 -14.225322 12.903289 -4.695079 -28.256201 -18.902647 12.606822 65.083183 -0.925088 0.253884 -0.412462 0.926391 0.644968 1.054169 -1.135631 4.860869 -5.757716 -6.393168 2.246193 30.598225 -0.577139 0.020560 -0.068196 0.435293 -0.348041 0.354351 0.982351 4.503106 6.147602 0.095033 4.374615 13.454057 1.047192 4.932051 18.879015 1.807042 12.452356 21.543949 -10.254242 16.826929 -23.443832 -11.566036 -33.395061 -8.345017 -48.071400 -45.383736 9.172027 0.914795 -58.477112 -6.211321 0.032111 -0.325246 0.915370 -0.141573 0.534780 0.029169 17.950436 28.770397 -12.194605 50.850979 34.642761 3.826443 24.424410 36.040520 4.733373 -0.563204 0.142196 -0.103941 0.173594 -0.213898 -0.499864 +-1.741199 166.936127 2.686651 4.567204 -50.538330 -13.126105 11.204014 -4.747783 -26.838512 -15.149994 10.656993 66.579414 -0.955702 0.338249 -0.397941 0.896324 0.602005 1.037689 -1.304852 4.599656 -5.750942 -6.092016 1.940378 27.872324 -0.541907 -0.065016 -0.068236 0.442993 -0.283998 0.381872 1.818287 4.337660 3.753734 0.135362 4.067211 14.070420 0.972161 4.424769 21.120447 2.898300 12.165617 19.755478 -11.424712 17.272381 -22.140577 -7.813501 -32.500191 -9.049336 -48.975452 -48.780499 11.931283 7.332956 -61.042088 -10.123203 -0.059005 -0.298473 0.863049 -0.057371 0.473225 0.026906 14.149646 28.324905 -13.783198 53.313660 38.319782 6.839855 24.272905 40.452888 5.504963 -0.606896 0.087924 -0.130276 0.163959 -0.187855 -0.508663 +-1.116850 167.522873 2.557625 4.297440 -51.116196 -12.040836 9.675473 -4.519208 -24.997295 -11.616341 8.511946 66.435524 -0.962903 0.379689 -0.370564 0.886650 0.604063 1.012242 -1.389569 4.485321 -5.933987 -5.458545 1.680303 25.809126 -0.510909 -0.126777 -0.052937 0.470299 -0.222756 0.380826 2.431949 4.417589 1.790206 0.288639 4.008914 14.463243 1.102686 4.126750 22.880022 3.484895 12.243679 17.819023 -11.681596 17.269367 -21.005154 -4.042046 -31.650074 -9.746116 -50.608727 -51.772160 14.626603 15.499710 -60.727291 -15.139826 -0.112405 -0.276126 0.800831 0.006442 0.420169 0.050234 11.013492 27.429026 -14.641417 54.557671 41.780724 9.835437 22.937544 46.543819 6.112786 -0.636364 0.035755 -0.149238 0.177622 -0.189456 -0.494775 +-0.541391 167.898407 2.453864 4.361744 -51.434917 -11.054779 7.878354 -3.735228 -23.162697 -7.941105 6.429951 65.177292 -0.949777 0.437757 -0.329240 0.861100 0.597817 0.944796 -1.804626 4.502451 -6.149775 -4.466592 1.429586 23.820765 -0.463412 -0.216011 -0.034420 0.493983 -0.121902 0.390823 2.997385 4.571626 -0.257583 0.370569 4.035855 14.711700 1.023057 3.951723 24.626509 3.914071 12.578932 15.228978 -11.110199 16.875650 -18.752180 -0.743901 -30.664396 -10.028459 -52.518311 -55.049278 18.219839 24.426231 -60.330238 -20.521482 -0.187869 -0.222364 0.699917 0.095241 0.339233 0.084744 8.055830 26.482649 -14.916796 54.994991 46.488121 13.880345 15.687236 53.654606 3.903935 -0.666761 -0.038188 -0.158363 0.186500 -0.177474 -0.454581 +-0.017238 168.023041 2.402568 3.871042 -52.003544 -9.528176 6.709861 -2.892868 -20.983067 -4.907027 4.673044 62.769791 -0.954610 0.534384 -0.294666 0.822020 0.562186 0.882944 -1.723489 4.555834 -6.583753 -3.497004 1.180878 22.104990 -0.413836 -0.329201 -0.024414 0.506356 -0.010320 0.427512 3.750002 4.468297 -2.291674 0.330457 3.861936 14.705108 0.769654 3.718451 26.160660 4.599025 13.089343 12.731689 -11.231078 17.006748 -16.437872 2.541770 -28.768927 -10.236218 -55.160057 -57.955772 22.532944 33.399292 -59.995354 -26.060850 -0.301763 -0.163693 0.600793 0.208210 0.250513 0.104402 4.048083 25.138454 -15.242782 57.143761 51.430218 19.309547 2.892658 58.712181 -2.700378 -0.714362 -0.116505 -0.171942 0.181699 -0.144272 -0.429184 +0.539191 168.027603 2.341322 3.245795 -52.347149 -8.080647 5.777129 -2.232229 -18.337067 -2.540280 3.240963 59.102299 -0.965928 0.613875 -0.258828 0.786637 0.532197 0.849030 -1.567415 4.424007 -6.680613 -2.641161 0.928540 19.995281 -0.369216 -0.409351 -0.008863 0.520865 0.082009 0.440413 4.445382 4.289368 -3.820657 0.398321 3.613709 14.689941 0.682775 3.432298 27.302216 4.940606 13.312265 10.404421 -11.891983 17.157036 -14.969582 5.120941 -26.997736 -10.015025 -56.990723 -60.259449 26.320190 43.209087 -60.279366 -32.511528 -0.399214 -0.149394 0.521621 0.303220 0.178195 0.117346 0.246590 24.085421 -15.501101 58.610477 55.349571 24.087618 -9.708085 61.525383 -10.294286 -0.753909 -0.165854 -0.198434 0.200387 -0.123885 -0.415817 +1.014935 167.862869 2.262209 2.580691 -52.641598 -6.906631 5.184370 -1.621103 -14.734839 -0.888774 2.226668 54.012791 -0.958989 0.669210 -0.238241 0.763504 0.529607 0.816491 -1.240811 4.195116 -6.455062 -2.224697 0.781500 17.749666 -0.338735 -0.486533 -0.007768 0.538846 0.153963 0.468239 5.080504 4.268611 -5.177485 0.521450 3.463481 14.743793 0.583985 3.059003 28.372547 5.678744 13.514594 8.482979 -12.038959 17.624033 -13.800121 7.956075 -25.593958 -9.929939 -56.198639 -63.232788 29.245718 51.822342 -58.840752 -37.121258 -0.487091 -0.106499 0.436747 0.386674 0.126779 0.125656 -2.841308 22.841391 -15.862072 60.078983 58.608681 28.536282 -20.106514 61.781517 -16.742739 -0.780824 -0.222018 -0.197245 0.195458 -0.107803 -0.393776 +1.574889 167.596359 2.205952 1.446637 -52.762737 -5.367519 5.059177 -1.391165 -10.710621 0.018047 1.433262 47.472149 -0.977717 0.731497 -0.225167 0.720070 0.485519 0.777411 -0.809864 3.966638 -6.352109 -2.113040 0.665520 15.869721 -0.305485 -0.549534 -0.004019 0.538197 0.215648 0.482522 5.767570 3.989911 -6.267773 0.639618 3.058176 14.700214 0.619620 2.579630 28.883720 6.159400 13.960284 7.362110 -12.458116 18.283043 -12.751431 10.052903 -24.351517 -9.480057 -53.699905 -64.759018 29.512980 58.553856 -56.511219 -40.093899 -0.560956 -0.092764 0.394651 0.453986 0.074504 0.123734 -6.371673 21.826117 -16.047449 60.999523 61.296791 32.375477 -28.739771 61.659569 -22.103241 -0.812228 -0.251972 -0.224097 0.195156 -0.076674 -0.393788 +2.122991 167.238693 2.187022 0.313755 -52.490204 -3.947927 4.938060 -1.299505 -6.705627 0.775312 0.735472 40.713821 -0.969301 0.772447 -0.194572 0.698240 0.467648 0.746544 -0.394179 3.708625 -6.110442 -1.957030 0.565109 14.122602 -0.279853 -0.608436 0.003066 0.544972 0.274963 0.493684 6.583023 3.607448 -7.297063 0.777250 2.633056 14.704673 0.659450 2.071916 29.388580 6.446123 14.108173 6.241909 -12.469319 18.545872 -11.315546 11.498991 -23.173052 -8.540711 -50.360516 -65.460114 28.249987 66.244225 -53.850945 -43.499607 -0.610585 -0.062093 0.339693 0.511628 0.028498 0.142019 -10.072805 20.962786 -16.156094 60.228111 63.554401 34.681648 -37.216831 61.106831 -27.350290 -0.827337 -0.300907 -0.235957 0.192610 -0.073424 -0.377537 +2.693966 166.916077 2.238712 -1.309960 -50.965702 -2.402592 5.175356 -1.478482 -2.685783 1.809810 -0.111490 33.517467 -0.961846 0.803516 -0.183226 0.676091 0.450051 0.720657 0.021776 3.442335 -5.737654 -1.272760 0.363422 12.778367 -0.264133 -0.651729 0.003701 0.540997 0.309819 0.515863 7.776382 2.774622 -8.128393 0.951592 1.749423 14.789710 0.656776 1.213658 29.835453 6.426330 14.210180 5.425530 -12.987343 18.695934 -10.650862 11.861858 -22.243177 -7.641180 -47.053417 -65.694344 26.514828 71.933510 -51.484486 -45.556492 -0.654173 -0.038133 0.300737 0.553796 0.003786 0.145219 -12.953259 19.873320 -16.167242 58.951290 65.573540 36.233543 -44.506298 60.223156 -31.614584 -0.837967 -0.328028 -0.232760 0.180454 -0.059542 -0.365360 +3.344231 166.516556 2.275648 -2.831777 -49.371227 -0.856844 5.602200 -1.604262 0.739984 3.104707 -0.801787 26.816574 -0.944391 0.822720 -0.162772 0.665852 0.444867 0.702334 0.268972 3.304372 -5.801988 -0.497117 0.202136 11.966423 -0.246493 -0.682495 0.009563 0.543759 0.344848 0.522821 8.932507 1.857474 -8.854094 1.053901 0.813424 14.744324 0.536229 0.242072 30.082453 6.469250 14.160932 4.716728 -12.887718 18.627659 -9.715234 11.906597 -21.417625 -6.675105 -44.719986 -65.960693 25.528608 77.199326 -49.268978 -47.273605 -0.682575 -0.014174 0.256794 0.586916 -0.024312 0.156279 -15.117030 18.801651 -16.190924 58.871418 67.275948 38.253052 -49.385948 58.973614 -34.156399 -0.840701 -0.358036 -0.229551 0.177425 -0.059580 -0.348875 +4.088347 166.135605 2.221860 -3.789623 -47.718605 0.243229 5.992908 -1.589058 3.621816 3.787888 -1.090564 20.618830 -0.964842 0.858817 -0.154754 0.645432 0.425519 0.680821 0.050851 3.428034 -6.595347 0.510630 0.033225 12.253393 -0.233086 -0.715098 0.009229 0.550480 0.381367 0.525954 9.625408 0.879968 -9.279586 1.091767 -0.226128 14.730681 0.445644 -0.853653 30.219864 6.392773 14.505769 3.931043 -13.087815 18.835524 -9.332656 12.099916 -20.844944 -6.184596 -40.841709 -66.085686 23.457973 80.984131 -47.533329 -48.129200 -0.718396 -0.016723 0.242627 0.619485 -0.050645 0.158796 -16.214434 17.959436 -16.351107 59.169277 69.208435 40.529335 -52.380905 57.442654 -35.167660 -0.861407 -0.370403 -0.252081 0.189459 -0.042917 -0.348726 +4.813396 165.871536 2.114463 -4.114263 -46.526340 0.768420 6.077905 -1.426612 6.019614 4.207882 -1.172302 15.388182 -0.975140 0.885805 -0.149485 0.645791 0.427648 0.698457 -0.542137 3.532210 -7.431653 1.385947 -0.112376 12.560043 -0.226389 -0.739483 0.003196 0.564623 0.395839 0.535510 9.543374 0.233090 -9.648150 1.246564 -0.986023 14.809028 0.725695 -1.763279 30.628012 6.600634 14.256324 3.307508 -13.710839 18.911345 -9.298841 12.732289 -19.973492 -6.519726 -38.631401 -67.696899 23.152399 80.889015 -45.741447 -46.305912 -0.753440 -0.017552 0.219062 0.648916 -0.061414 0.154361 -17.137726 16.946499 -16.522482 59.544132 70.997849 42.608353 -55.432217 55.552082 -36.067253 -0.873225 -0.388853 -0.257990 0.192265 -0.045149 -0.353095 +5.533974 165.746384 2.075864 -4.566462 -45.609764 1.454927 6.405031 -1.199720 7.733717 4.191383 -1.094135 11.088933 -0.992532 0.917020 -0.145568 0.636329 0.416415 0.697439 -0.942615 3.576872 -8.171201 2.072731 -0.253487 12.510178 -0.216528 -0.763465 0.004822 0.570931 0.418819 0.542791 9.632628 -0.336958 -9.938972 1.325083 -1.658846 14.787740 0.885473 -2.586810 30.807547 6.838702 14.095219 2.803681 -14.081438 18.978403 -9.149955 12.765807 -19.520563 -6.676977 -36.691902 -68.672310 22.575163 80.770302 -44.505062 -44.939026 -0.789069 -0.023248 0.205625 0.678495 -0.078759 0.151664 -17.390558 16.595470 -16.580105 61.515057 72.139572 45.213779 -56.794827 53.990479 -36.097549 -0.893428 -0.397582 -0.270697 0.199780 -0.035105 -0.358478 +6.182292 165.742096 2.022618 -4.448292 -45.172607 1.775614 6.603162 -0.842956 8.960481 3.519059 -0.881249 7.358668 -1.002064 0.928626 -0.132967 0.648525 0.432218 0.700545 -1.366270 3.568439 -8.801847 2.040270 -0.265983 12.231169 -0.217740 -0.772941 0.017745 0.587647 0.440070 0.540895 9.359339 -0.615042 -10.195879 1.330779 -1.990932 14.762650 0.993268 -3.045335 30.958542 7.037008 13.999804 2.575595 -13.990031 18.902618 -9.162629 12.861414 -19.338072 -6.997868 -36.704880 -69.690643 23.087234 79.349464 -43.535240 -43.198849 -0.798091 -0.034187 0.201807 0.693341 -0.083715 0.170899 -16.809072 16.337109 -16.476202 63.666771 72.694939 47.586052 -57.554092 53.302601 -36.181171 -0.909447 -0.403617 -0.280776 0.221884 -0.045928 -0.354175 +6.931452 165.857742 2.042048 -4.524076 -45.471512 2.415572 6.684500 -0.525990 9.548419 2.799656 -0.689551 4.551904 -0.998985 0.917826 -0.125861 0.647533 0.435453 0.706568 -1.552945 3.579619 -9.558947 1.619832 -0.219466 11.813200 -0.221203 -0.750366 0.023462 0.587641 0.438556 0.524521 9.622713 -0.744724 -10.239721 1.259315 -2.083407 14.659130 0.779097 -3.142443 30.788919 7.092689 13.957775 2.779118 -13.979992 18.911421 -9.485190 12.599025 -19.564396 -7.049825 -37.936455 -69.937202 23.966663 78.551476 -43.408169 -42.624744 -0.784627 -0.061749 0.212402 0.681619 -0.073988 0.175305 -16.565708 16.180525 -16.328308 65.363434 72.428841 48.807285 -58.076004 53.666645 -36.776566 -0.900515 -0.383453 -0.289668 0.243410 -0.053883 -0.352447 +7.675751 166.100204 2.070122 -4.128090 -45.772118 2.760961 6.582593 -0.288415 9.202554 1.806580 -0.502180 3.280814 -1.007232 0.934264 -0.125298 0.618597 0.400284 0.699762 -1.928900 3.487741 -10.127186 0.726737 -0.150823 10.941847 -0.214101 -0.738840 0.025129 0.568147 0.448070 0.520274 9.418840 -0.749399 -10.224453 1.178980 -2.105778 14.525285 0.775315 -3.132056 30.578533 7.119805 13.919209 2.932585 -14.344238 19.053808 -9.693613 12.580996 -20.104471 -7.008117 -41.190720 -69.969582 25.981901 78.363060 -43.288658 -42.714020 -0.801493 -0.093635 0.223122 0.685947 -0.077671 0.159990 -16.251534 16.404156 -16.139996 67.353638 71.347771 49.360287 -58.352673 54.922142 -37.832985 -0.901637 -0.353418 -0.304566 0.257814 -0.031979 -0.360226 +8.448124 166.301224 2.234575 -4.153297 -46.296391 3.781082 6.706800 -0.174174 8.164332 0.664245 -0.338887 2.763365 -0.968317 0.904292 -0.121538 0.613074 0.398732 0.685733 -2.018538 3.354179 -10.796198 -0.126673 -0.113046 9.494903 -0.217796 -0.735774 0.029467 0.544810 0.431228 0.531432 9.976312 -0.604007 -10.213030 1.122508 -1.857118 14.020645 0.699111 -2.880503 29.795309 6.919830 13.569256 3.437332 -14.687613 19.020651 -9.391164 12.138350 -20.374187 -6.631380 -48.149910 -69.667625 30.390884 77.630547 -43.134418 -42.613262 -0.782190 -0.067446 0.212994 0.675874 -0.066330 0.163441 -15.813344 16.263140 -15.958813 70.225433 69.319916 49.998711 -56.459789 57.044991 -37.963970 -0.879355 -0.360009 -0.274940 0.226777 -0.038582 -0.346344 +9.282786 166.494858 2.347009 -3.928795 -46.267166 4.502756 6.428177 -0.230351 6.592460 0.199388 -0.289583 3.161477 -0.936374 0.874512 -0.119686 0.626233 0.424233 0.686618 -2.211951 3.086046 -11.023399 -1.190971 -0.081117 7.473042 -0.226323 -0.730708 0.036597 0.541421 0.414474 0.540792 10.648317 -0.454686 -10.119455 1.047008 -1.567978 13.704820 0.487235 -2.615505 29.267078 6.617688 13.330579 3.289179 -15.048615 18.882923 -9.547975 11.276918 -20.780516 -6.425837 -53.815285 -69.043030 33.721661 77.028404 -43.968567 -43.241825 -0.766231 -0.046558 0.197844 0.668443 -0.049111 0.174003 -14.653196 16.206802 -15.984611 71.905121 67.237083 49.336391 -53.345303 59.163342 -37.195278 -0.865278 -0.367869 -0.244182 0.210047 -0.055226 -0.331272 +9.987024 166.609894 2.473021 -3.136998 -46.390316 4.714163 5.770554 -0.289849 4.999285 -0.387645 -0.227076 3.891324 -0.933112 0.862783 -0.114195 0.628699 0.422997 0.684465 -2.971613 2.695870 -11.014588 -1.807122 -0.127723 5.261276 -0.230353 -0.710394 0.043340 0.536817 0.410120 0.528214 10.550545 -0.095100 -10.051905 0.981614 -1.129025 13.418004 0.567488 -2.125025 28.658171 6.289466 13.210185 3.521309 -14.803766 18.554222 -9.669437 10.998502 -21.039623 -6.738458 -60.729252 -67.804482 37.449417 73.295395 -45.765530 -42.805649 -0.743066 -0.061895 0.214802 0.650001 -0.042513 0.181157 -12.756871 16.009085 -15.728785 72.112259 64.787239 47.309265 -49.490715 62.374615 -36.256721 -0.857743 -0.352462 -0.248829 0.222600 -0.060435 -0.328974 +10.609015 166.630081 2.673107 -3.135434 -46.986843 5.377173 5.519662 -0.344492 3.658340 -1.161456 -0.143338 4.655225 -0.925148 0.801436 -0.138361 0.680590 0.482693 0.714220 -3.008521 2.466415 -10.979682 -2.571390 -0.128521 3.314441 -0.258659 -0.674429 0.033636 0.555778 0.347898 0.518019 11.077219 0.304370 -9.943113 0.911144 -0.610080 13.158225 0.347211 -1.585290 28.096113 5.962961 13.161081 4.155705 -14.352313 18.135397 -10.577666 10.876793 -20.990904 -7.267356 -67.501236 -66.295486 41.076885 68.054977 -48.515629 -41.867592 -0.674972 -0.044893 0.243331 0.593388 -0.002065 0.185195 -11.143422 15.545979 -15.801326 74.072563 62.349815 46.512150 -42.419422 64.815987 -32.580124 -0.838154 -0.351920 -0.220728 0.206311 -0.091956 -0.329915 +11.287258 166.575317 2.875085 -3.017461 -47.034439 5.605857 5.282553 -0.456198 2.190993 -2.010683 -0.033410 6.026423 -0.915196 0.757858 -0.156570 0.691256 0.499767 0.715842 -3.337122 2.261250 -10.816745 -2.958837 -0.162566 1.978839 -0.277146 -0.634447 0.021719 0.550111 0.306414 0.506944 11.473438 0.529531 -9.672609 0.867118 -0.299386 13.043264 0.141956 -1.211992 27.429104 5.563430 13.129786 4.750746 -13.919151 17.716015 -11.302094 10.442020 -21.725042 -7.825304 -70.046265 -64.170631 40.751312 61.536026 -51.899170 -40.211170 -0.625531 -0.050168 0.273576 0.544298 0.029618 0.176874 -9.282664 15.843668 -15.935754 73.889618 59.597332 43.284920 -31.042006 66.623177 -25.413580 -0.813509 -0.325952 -0.205116 0.200880 -0.095371 -0.327139 +11.863712 166.463837 3.024435 -2.495398 -47.147263 5.546171 4.835598 -0.621972 0.556280 -3.121597 0.136987 7.777357 -0.902756 0.724637 -0.162514 0.685891 0.477446 0.721941 -4.096847 2.062710 -10.849076 -3.036463 -0.223883 0.992493 -0.287030 -0.588382 0.025372 0.518753 0.268736 0.493044 10.841722 0.522071 -9.321322 0.820394 -0.269371 12.876479 0.374337 -1.066074 26.485256 5.411653 13.156612 5.820654 -13.811643 17.776464 -11.664165 9.143945 -22.260668 -8.141236 -71.421997 -61.269115 38.767235 52.778831 -55.450920 -36.906933 -0.577676 -0.068979 0.317975 0.498814 0.053167 0.167633 -7.361797 16.529169 -15.911528 73.812050 56.629707 39.688011 -17.302402 66.768982 -16.052586 -0.788626 -0.290607 -0.202831 0.191856 -0.097674 -0.338239 +12.401054 166.277664 3.154704 -2.037565 -47.591949 5.415448 4.425879 -0.777078 -0.847201 -4.249456 0.337114 9.440880 -0.870760 0.671123 -0.169189 0.701285 0.482105 0.756035 -4.823535 1.944576 -11.127158 -2.877724 -0.268732 0.464964 -0.312754 -0.533135 0.023128 0.490767 0.208162 0.489862 9.686991 0.588235 -8.906542 0.920222 -0.218365 12.797845 1.038319 -0.995882 25.654694 5.434700 13.081088 7.084601 -14.084243 18.010908 -12.444237 8.137945 -22.453556 -8.675416 -72.790688 -58.218048 36.405453 41.390324 -58.006191 -31.138683 -0.518763 -0.078089 0.357650 0.443880 0.101073 0.159553 -5.290864 17.223194 -15.896435 73.718361 53.580341 35.691223 -4.735802 64.801926 -7.590811 -0.749722 -0.261426 -0.177602 0.170032 -0.120518 -0.346218 +13.009628 165.965729 3.271900 -1.599194 -47.615776 5.253868 3.936767 -1.008868 -2.273592 -5.255167 0.526702 11.173540 -0.851527 0.635296 -0.185302 0.696868 0.462706 0.779299 -5.782530 1.960593 -11.972582 -2.454888 -0.311167 1.149524 -0.338580 -0.489529 0.008743 0.451783 0.151036 0.500010 8.859654 0.416725 -8.360505 0.804848 -0.362835 12.657328 1.248595 -1.040597 24.621264 5.756118 13.107388 8.471386 -14.608809 18.523249 -13.256151 6.587135 -22.331894 -9.380278 -73.134293 -54.735966 33.103741 25.748184 -59.487988 -21.907495 -0.477792 -0.088404 0.405408 0.396669 0.147616 0.136833 -3.620882 17.437044 -15.965688 75.112976 50.245583 32.040432 4.919071 60.777485 -1.837394 -0.716589 -0.226837 -0.157760 0.139049 -0.121866 -0.361084 +13.689462 165.715256 3.357036 -1.525289 -47.352985 5.126395 3.498406 -1.336019 -3.517449 -5.589904 0.605295 12.880898 -0.828691 0.581504 -0.203737 0.686710 0.438279 0.810218 -6.341760 2.069883 -12.976401 -2.222594 -0.323506 2.569576 -0.357989 -0.428830 -0.001878 0.407752 0.076783 0.490936 8.293534 0.167247 -7.535941 0.813224 -0.585301 12.614116 1.447310 -1.184873 23.521425 6.062837 12.816745 10.041477 -15.351942 19.024492 -14.077400 4.619469 -23.113411 -10.017073 -71.529678 -51.379025 28.599667 9.291545 -58.586708 -11.682631 -0.422995 -0.112413 0.456453 0.337794 0.195500 0.105369 -1.405983 18.109829 -15.732746 75.129906 46.434978 26.554586 11.080467 55.365620 0.890533 -0.672955 -0.181828 -0.142557 0.108538 -0.128611 -0.383353 +14.340890 165.404556 3.512200 -1.447079 -46.619080 4.938597 3.089744 -1.707319 -4.562463 -5.856625 0.634827 14.411160 -0.803689 0.507842 -0.225091 0.696737 0.439189 0.852775 -6.788385 2.186548 -14.049139 -2.263346 -0.310509 4.552628 -0.389089 -0.356415 -0.008081 0.373815 -0.013550 0.478248 7.550427 -0.055913 -6.542283 1.055175 -0.835115 12.460199 2.099762 -1.391689 22.169083 6.373212 12.262589 11.831697 -16.036974 19.438776 -15.308483 3.124183 -23.787521 -10.731968 -70.668320 -48.315071 24.936066 -4.240743 -54.479362 -3.715521 -0.347205 -0.138050 0.518078 0.264602 0.260199 0.083844 0.825440 18.053167 -15.458365 73.993095 42.185501 20.460098 15.609978 49.038227 2.242805 -0.627372 -0.135274 -0.121289 0.080248 -0.152339 -0.404946 +14.950378 165.018173 3.797540 -1.462948 -45.454746 4.639722 2.957660 -2.082984 -5.279097 -6.165030 0.662631 15.945303 -0.782841 0.452228 -0.240743 0.694971 0.431214 0.870824 -7.284422 2.383875 -15.323796 -2.195810 -0.283828 7.683669 -0.409062 -0.299442 -0.011424 0.340246 -0.074252 0.466708 7.297747 -0.380790 -5.377279 1.294026 -1.106823 12.253443 2.448102 -1.498439 20.760929 6.308159 12.052160 13.019371 -16.238274 19.555813 -16.028206 0.244249 -25.022518 -10.924192 -68.617348 -45.258114 20.819571 -12.157901 -48.528503 0.207338 -0.290110 -0.160529 0.565281 0.208137 0.304053 0.065211 3.037800 18.043905 -15.088104 71.273048 38.630581 15.268636 18.606468 43.471981 2.859676 -0.591329 -0.092149 -0.105031 0.061955 -0.160574 -0.416139 +15.548557 164.614655 4.060344 -0.822508 -44.121681 3.669883 2.339354 -2.453251 -5.646589 -6.323235 0.658684 17.178185 -0.759197 0.389478 -0.259234 0.707116 0.443091 0.906007 -8.247067 2.518270 -16.659801 -2.202044 -0.232734 11.352078 -0.438053 -0.231460 -0.017038 0.314520 -0.143345 0.456366 6.283695 -0.651374 -4.055777 1.563119 -1.439776 12.040371 3.027382 -1.720565 19.457281 6.342428 11.837945 14.719854 -16.451115 19.658819 -17.063297 -3.105852 -25.975866 -10.878946 -66.261627 -42.296741 17.122465 -15.560457 -41.139008 1.300100 -0.230875 -0.190231 0.612396 0.146476 0.361282 0.046164 5.240134 18.377724 -15.069351 68.336533 35.998730 11.358818 17.344297 35.477619 1.663156 -0.552998 -0.042976 -0.080218 0.050287 -0.176439 -0.426192 +16.258875 164.121841 4.396281 -0.526689 -42.156631 3.096961 2.019501 -2.971795 -6.533850 -6.615857 0.680378 19.104445 -0.717315 0.334283 -0.259876 0.722446 0.454819 0.922395 -9.328238 2.684754 -18.373388 -1.465240 -0.298387 15.719181 -0.465424 -0.184207 -0.020246 0.289746 -0.193480 0.456953 5.969747 -0.987428 -2.639379 1.985360 -1.768169 11.528676 3.659006 -1.982298 17.828646 6.043072 11.164267 15.978730 -16.159763 19.152830 -17.022165 -6.791176 -26.318186 -10.280845 -64.828995 -39.297459 14.182349 -15.830262 -34.086334 0.930048 -0.168277 -0.189893 0.641259 0.093652 0.408390 0.050346 7.056951 18.279985 -14.689896 65.005257 33.120468 7.947034 15.165175 28.456213 0.616273 -0.511617 -0.022493 -0.048137 0.029762 -0.201445 -0.417883 +17.121155 163.674973 4.763916 -0.405854 -39.236660 2.653123 1.838215 -3.724790 -7.803119 -6.759108 0.645287 21.660698 -0.686228 0.278868 -0.257977 0.739851 0.471171 0.930936 -10.780169 2.609465 -19.950228 0.197283 -0.670253 20.128645 -0.483128 -0.129328 -0.012439 0.273504 -0.231067 0.437368 6.007480 -1.486705 -1.083374 2.573779 -2.254842 10.880698 4.430285 -2.424507 16.082211 5.199182 10.519214 17.099606 -15.341762 18.158955 -16.820065 -9.979325 -26.385277 -9.282495 -63.947819 -36.175777 11.363956 -13.223333 -28.615065 -0.279286 -0.102524 -0.205485 0.670263 0.039649 0.441250 0.058172 8.847895 18.030476 -14.134006 61.200119 30.162346 5.056910 12.578066 21.769110 -0.101112 -0.478289 0.007417 -0.027782 0.032450 -0.223496 -0.407672 +17.987257 163.158676 5.165557 -0.280909 -36.441559 2.200913 1.793572 -4.434504 -9.069856 -7.343200 0.723441 24.051542 -0.681959 0.247340 -0.263224 0.749371 0.470826 0.936671 -11.802122 2.483657 -21.586304 1.182879 -1.073035 24.508240 -0.496593 -0.087906 -0.011062 0.262516 -0.263968 0.420173 6.108651 -1.907411 0.472202 3.176996 -2.695463 10.254608 5.211618 -2.795543 14.492119 4.370212 10.061915 17.801533 -14.890090 17.281948 -16.884142 -12.154376 -25.205059 -8.618223 -63.741871 -33.114552 9.065126 -10.763738 -24.465286 -1.145176 -0.049799 -0.226170 0.710272 -0.006741 0.465452 0.059838 9.630290 16.706665 -13.765465 58.390163 27.449877 2.976409 9.903769 16.152252 -0.518547 -0.459651 0.035538 -0.026320 0.036820 -0.233362 -0.410518 +18.817377 162.452118 5.698482 -0.430604 -34.172382 2.031970 2.178449 -4.988667 -10.145332 -8.686339 1.057935 26.239075 -0.649058 0.222042 -0.264935 0.732481 0.443080 0.932907 -12.446044 2.401036 -24.001551 1.969040 -1.600069 29.910732 -0.497606 -0.064112 -0.015886 0.224122 -0.293268 0.423610 6.627773 -2.420562 1.985492 3.635797 -3.087609 9.539906 5.610117 -3.091744 12.832644 3.872123 9.503442 17.847464 -15.232028 16.768122 -16.546968 -14.318172 -23.482506 -8.115184 -62.692909 -30.076515 7.002473 -9.019322 -20.322674 -1.478949 -0.023655 -0.218934 0.717353 -0.033354 0.478306 0.044043 9.636743 14.672241 -13.277026 57.031883 24.705708 1.119607 6.524127 12.321244 -0.924001 -0.427650 0.049968 -0.003955 0.008118 -0.229006 -0.407992 +19.560867 161.792160 6.139999 -0.294029 -32.319698 1.308927 2.233769 -5.468419 -10.732575 -9.758977 1.383542 28.208796 -0.639850 0.192414 -0.275345 0.729107 0.431405 0.932727 -12.930139 2.362654 -26.414808 2.450257 -2.076389 35.690922 -0.501605 -0.029591 -0.020603 0.205311 -0.326625 0.409433 6.761763 -2.790942 3.965942 4.064402 -3.414850 8.906984 5.857875 -3.305818 11.231076 3.319335 9.235732 18.173372 -14.940285 16.087576 -16.600031 -16.075827 -22.279053 -7.568247 -60.280659 -26.863106 4.939161 -7.828651 -16.717510 -1.536998 0.017585 -0.228632 0.744063 -0.073283 0.493246 0.031533 9.730667 13.081980 -12.630844 55.004684 22.089293 -0.635053 3.349969 9.671106 -1.134834 -0.404504 0.074015 0.002507 -0.000893 -0.228049 -0.411501 +20.224602 161.254517 6.599075 -0.332635 -31.351137 0.433412 2.455002 -5.541077 -10.571746 -11.059589 1.861845 29.440784 -0.622424 0.139985 -0.273872 0.751526 0.465420 0.928432 -12.774965 2.737276 -28.874720 2.585881 -2.354895 41.719025 -0.516569 0.016297 -0.012289 0.210724 -0.352087 0.380525 7.165047 -2.848556 6.114282 4.568718 -3.356800 8.417006 6.010482 -3.167976 9.858669 2.086951 9.485168 18.477165 -14.131598 15.180103 -17.124079 -16.677940 -20.562317 -7.400714 -58.572071 -24.247978 3.575681 -6.228309 -13.320272 -1.565023 0.081132 -0.242995 0.767215 -0.122983 0.517194 0.047763 9.835015 10.827761 -12.255850 52.176533 19.710264 -1.849759 1.285018 6.732428 -1.015553 -0.381530 0.097441 0.012278 0.018222 -0.248879 -0.396089 +20.872875 160.901703 7.034765 -0.464211 -30.660666 -0.433510 2.673152 -5.482160 -10.041775 -12.319407 2.337566 30.229118 -0.607982 0.110005 -0.265406 0.757847 0.476723 0.913260 -12.021896 3.301222 -31.189882 2.236186 -2.369417 46.975021 -0.521024 0.044332 -0.001557 0.210049 -0.359058 0.357662 7.702997 -2.979056 8.228499 5.045257 -3.318313 8.036686 6.023520 -3.031139 8.680167 1.071115 9.656452 18.589230 -13.518010 14.430027 -17.097666 -17.382322 -19.095917 -7.240079 -56.243767 -21.826435 2.470163 -4.387517 -9.405055 -1.462072 0.124652 -0.254522 0.780898 -0.153239 0.526482 0.065704 9.550178 8.885822 -11.754519 49.023010 17.470602 -2.685491 -0.111989 4.112675 -0.775527 -0.365014 0.112732 0.012349 0.035185 -0.261608 -0.381423 +21.639994 160.829788 7.481021 -0.622758 -29.786985 -1.884700 2.283099 -5.567119 -8.806602 -12.604412 2.436697 31.018452 -0.603511 0.087460 -0.276855 0.772165 0.482783 0.923314 -10.980488 3.771713 -32.316219 2.067063 -2.423262 50.997051 -0.540236 0.074081 -0.005267 0.198972 -0.389428 0.360868 8.342907 -3.351641 10.840002 5.625210 -3.525408 7.821380 5.869770 -3.069598 7.649729 0.650808 9.776376 19.321848 -13.334396 14.028391 -17.694664 -18.402843 -18.589746 -6.502235 -52.590324 -18.987827 1.140892 -3.023208 -6.905797 -1.348025 0.161266 -0.261033 0.815077 -0.189580 0.555324 0.064392 8.239124 8.055065 -10.758518 46.048599 15.254581 -3.208683 -1.091520 1.592966 -0.432053 -0.351876 0.134838 0.025966 0.029404 -0.265958 -0.382933 +22.424587 160.908325 7.925178 -0.490471 -28.952196 -3.469056 1.336498 -5.674159 -7.503947 -12.487623 2.377238 31.576254 -0.596319 0.073967 -0.277076 0.758839 0.470597 0.898235 -9.953231 4.158872 -33.392475 2.160884 -2.563747 54.342800 -0.536870 0.094891 -0.000763 0.185013 -0.389990 0.347134 9.092764 -3.841287 13.144320 5.987845 -3.720496 7.830401 5.483124 -3.105277 6.963216 -0.112324 9.898744 19.384218 -12.884274 13.345969 -17.692638 -18.561357 -17.824627 -5.743066 -49.085014 -16.278885 0.096327 -2.032188 -5.323343 -1.237794 0.181732 -0.273470 0.825958 -0.209336 0.554862 0.063239 6.876943 7.121930 -9.678952 43.083279 13.109707 -3.523948 -1.373094 -0.261948 -0.142213 -0.341089 0.158238 0.026091 0.039243 -0.254256 -0.373656 +23.068216 160.935287 8.543096 -0.436278 -28.071491 -4.969201 0.564327 -5.590859 -5.618447 -12.296007 2.287382 31.611900 -0.565054 0.050457 -0.265725 0.755624 0.464298 0.898159 -8.714998 4.598945 -34.485455 2.890420 -3.011736 57.040359 -0.541519 0.113503 0.004481 0.163393 -0.405349 0.346940 9.493400 -4.334207 14.952873 6.371686 -4.018046 8.027009 5.421814 -3.286953 6.647909 -0.553955 9.605702 19.111580 -13.468595 12.933849 -17.908739 -18.282885 -16.424681 -5.016461 -46.259041 -13.834525 -0.800706 -0.769497 -4.524465 -1.174586 0.207089 -0.271248 0.826546 -0.228122 0.567549 0.067077 4.821727 5.719222 -8.709655 40.986530 11.095417 -3.899732 -1.788374 -0.786228 -0.011765 -0.316219 0.165213 0.043130 0.029844 -0.264181 -0.363574 +23.712740 160.942703 9.323050 -0.599318 -26.723270 -6.319501 -0.155460 -5.561653 -3.512523 -11.891955 2.065704 31.452616 -0.538269 0.041541 -0.243085 0.716924 0.426200 0.867524 -7.456089 4.688745 -35.087532 3.938494 -3.794292 58.905201 -0.526702 0.127627 0.022362 0.131843 -0.390833 0.330828 10.296645 -5.149209 16.233130 6.656473 -4.409945 8.239621 5.156730 -3.526691 6.387286 -0.570579 9.342257 18.528896 -13.786405 12.824283 -17.583708 -17.849489 -15.090571 -4.014165 -43.565063 -11.130394 -1.708556 0.092901 -5.203298 -1.189002 0.212801 -0.291262 0.820949 -0.228239 0.558396 0.071292 2.206859 4.128012 -7.481816 39.591293 8.789874 -4.320118 -2.130549 -1.229685 0.122741 -0.297240 0.185543 0.034605 0.039052 -0.258056 -0.352514 +24.243956 161.042709 10.138887 -0.562326 -25.331175 -7.786211 -0.613432 -5.551534 -1.416547 -12.094377 2.014982 31.220966 -0.499184 0.023347 -0.223791 0.705707 0.412276 0.854163 -6.194920 4.618425 -34.851822 5.294713 -4.694408 59.146061 -0.520166 0.133804 0.034584 0.107697 -0.391482 0.329902 10.691087 -5.883470 17.202353 6.916006 -4.840452 8.608887 5.060363 -3.826022 6.436947 -0.904841 8.898948 17.676657 -14.208172 12.424594 -17.389872 -17.126730 -13.202976 -3.379419 -41.052414 -8.985575 -2.369873 0.805703 -6.117474 -1.214441 0.228904 -0.273964 0.804441 -0.233990 0.555044 0.081006 -0.019672 2.095010 -6.690527 37.759525 6.905876 -4.687798 -2.427107 -1.176888 0.173994 -0.274443 0.179563 0.050153 0.025607 -0.266645 -0.337505 +24.747442 160.870392 11.179552 -0.578539 -24.154449 -8.219872 -0.936901 -5.625724 -0.386215 -12.527210 2.088716 31.182953 -0.476140 0.074208 -0.178591 0.613041 0.305861 0.767077 -4.966709 4.493724 -35.246143 6.582835 -5.580624 58.713428 -0.466109 0.098409 0.059476 0.054857 -0.307502 0.320888 11.781857 -6.691152 16.796028 6.743843 -4.985833 8.706001 4.526690 -3.830220 6.383439 -0.946302 8.488519 16.003040 -14.010287 12.272089 -15.017850 -15.380864 -10.442210 -3.030805 -39.234646 -7.211109 -2.810589 0.887141 -7.536844 -1.274202 0.177573 -0.277170 0.763268 -0.180613 0.483986 0.085168 -2.506689 -0.986564 -6.003316 36.653732 4.884170 -5.199180 -2.806210 -0.854854 0.191117 -0.273786 0.178352 0.015746 0.033408 -0.222224 -0.319071 +25.213335 160.701965 12.193588 -0.845942 -23.051422 -8.161213 -0.904110 -5.684957 0.332777 -12.910088 2.163808 30.980381 -0.438464 0.122539 -0.125445 0.528355 0.206529 0.692907 -3.388099 4.560627 -35.916801 7.811176 -6.331916 57.676292 -0.407796 0.055356 0.081446 0.005881 -0.220031 0.312005 13.469209 -7.611569 15.729387 6.333099 -4.948132 8.774063 3.580273 -3.743841 6.513893 -0.684379 8.281332 14.177424 -13.361083 12.441552 -12.034737 -13.373982 -7.861249 -2.796458 -37.001450 -5.968611 -2.966073 0.532695 -8.605954 -1.245934 0.122792 -0.260270 0.702529 -0.119410 0.404888 0.091026 -4.601079 -4.041925 -5.429029 34.989899 3.055854 -5.526484 -2.762016 -0.647165 0.180077 -0.265609 0.155190 -0.012598 0.030121 -0.190733 -0.298594 +25.632938 160.749649 13.051257 -0.492865 -21.974169 -8.878628 -1.755484 -5.656342 1.673065 -13.018961 2.060964 30.379522 -0.421478 0.130250 -0.113707 0.496773 0.176204 0.653664 -1.826518 4.584180 -35.582439 8.616173 -6.525876 55.293709 -0.388612 0.034379 0.086310 -0.012125 -0.196096 0.314364 14.121047 -8.179625 15.231941 5.962939 -5.075099 9.090343 2.881322 -3.822383 6.937631 -0.516674 7.900000 13.028169 -13.183979 12.294391 -11.394678 -11.631428 -5.815143 -2.591468 -34.481136 -4.834396 -3.098848 0.822594 -9.827442 -1.268793 0.107955 -0.237085 0.678499 -0.101365 0.378991 0.092074 -6.267289 -6.337465 -4.952190 33.279041 1.446446 -5.851942 -3.306091 -0.368326 0.194454 -0.262062 0.141217 -0.013978 0.016206 -0.175855 -0.287376 +26.104988 160.896362 13.965075 -0.057939 -21.055170 -9.571999 -2.886122 -5.544180 3.153148 -12.934644 1.891727 29.578020 -0.412060 0.138143 -0.101730 0.454554 0.137933 0.606298 -0.317278 4.589125 -34.905312 9.536028 -6.574341 51.857410 -0.360851 0.023379 0.094021 -0.029845 -0.165000 0.298523 14.652732 -8.598117 14.889610 5.710014 -5.161633 9.303292 2.307444 -3.819375 7.148376 -0.597643 7.818739 11.919141 -12.729535 12.113002 -10.746063 -10.211658 -3.756370 -2.287253 -32.548527 -3.450843 -3.383921 1.534482 -12.660777 -1.446682 0.093359 -0.232053 0.657011 -0.086033 0.343812 0.088174 -7.820265 -8.597324 -4.433678 31.078848 -0.233092 -6.131640 -4.103442 0.337223 0.192112 -0.258543 0.141679 -0.028994 0.019398 -0.152918 -0.277645 +26.539045 161.073700 14.935816 0.547250 -20.791794 -10.104798 -4.250825 -5.331938 4.437512 -12.598433 1.676266 28.740479 -0.377824 0.138285 -0.083122 0.451326 0.134770 0.595281 1.284515 4.800222 -34.150448 9.944191 -6.175338 47.906193 -0.350290 0.013477 0.100568 -0.039561 -0.146735 0.306231 14.986228 -8.768910 13.744876 5.339252 -5.169948 9.657063 1.799087 -3.818850 7.960788 -0.735208 7.466435 11.453094 -12.274807 11.689947 -9.908114 -8.972543 -1.668569 -2.024903 -30.922911 -2.089892 -3.690157 2.569504 -16.170771 -1.742185 0.086264 -0.203547 0.623112 -0.073070 0.329006 0.097783 -8.537683 -10.219733 -3.942464 27.958426 -1.691526 -6.028136 -4.649889 1.120939 0.162565 -0.246776 0.121130 -0.011473 0.007524 -0.158651 -0.259085 +26.942667 161.344879 15.896255 1.111168 -20.721712 -10.597591 -5.323337 -5.051171 5.654825 -12.650623 1.602666 27.833784 -0.373337 0.137735 -0.080101 0.450876 0.145043 0.576128 2.927732 5.076637 -33.048817 10.019190 -5.563826 43.482086 -0.343068 -0.006288 0.106813 -0.031474 -0.133714 0.308576 15.360828 -8.868272 12.346582 4.943704 -5.174675 10.111707 1.264514 -3.810249 9.094934 -0.790980 7.210672 11.101158 -12.318106 11.479405 -9.616968 -8.512142 0.020960 -1.910882 -28.919224 -0.699997 -3.910028 4.508354 -19.858299 -2.224001 0.078637 -0.184834 0.602361 -0.058682 0.317163 0.108214 -8.636541 -11.399323 -3.504835 24.468323 -2.963563 -5.644667 -4.946243 2.094256 0.113133 -0.253664 0.103060 -0.007111 0.003796 -0.159320 -0.247979 +27.323874 161.485550 16.822321 1.940500 -20.586254 -11.312677 -6.426261 -4.807467 6.713341 -12.886385 1.595654 27.183458 -0.388482 0.137314 -0.097859 0.474284 0.167181 0.592241 4.363337 5.281616 -31.531485 9.498982 -4.702773 38.913509 -0.354493 -0.015034 0.097754 -0.017952 -0.153497 0.324411 14.890881 -8.579691 11.180299 4.772084 -5.225480 10.589808 1.320994 -3.811161 10.285958 -0.719606 6.772636 10.976127 -12.714890 11.198711 -10.499669 -7.627407 1.131515 -1.896130 -26.921474 0.094818 -3.812617 4.908077 -21.464312 -2.376128 0.080281 -0.166699 0.609572 -0.063852 0.327447 0.103616 -8.907653 -12.397421 -2.952041 21.458557 -4.484044 -5.297880 -5.691669 3.622358 0.060142 -0.265758 0.091516 0.005371 -0.010908 -0.161071 -0.255810 +27.733053 161.661743 17.672020 2.936355 -20.234690 -12.423692 -7.440042 -4.702025 7.723317 -13.639215 1.719158 27.088367 -0.347704 0.095099 -0.102163 0.512793 0.227143 0.597607 5.347136 5.092773 -29.293089 8.973684 -3.921381 33.949802 -0.381797 -0.017672 0.087484 -0.006805 -0.180232 0.351552 14.379848 -8.491043 10.683340 4.562894 -5.332934 11.013088 1.112489 -3.937561 11.036722 -1.037757 6.677705 10.967283 -12.649622 10.835899 -11.103036 -6.987932 1.553965 -1.552788 -24.450628 0.967897 -3.622825 5.621494 -22.384287 -2.451061 0.110502 -0.113252 0.592223 -0.082330 0.360925 0.121900 -8.923377 -12.963563 -2.366295 19.036575 -6.060053 -4.968187 -7.080666 5.788030 -0.049882 -0.244997 0.062701 0.057483 -0.042715 -0.188701 -0.228109 +28.199032 161.831436 18.564884 3.935950 -19.975906 -13.470344 -8.446548 -4.634501 8.534697 -14.544182 1.914137 27.118479 -0.368330 0.102974 -0.109190 0.522461 0.231264 0.610248 6.132268 4.886489 -27.054514 8.707843 -3.309890 29.131111 -0.385830 -0.015570 0.085881 0.002317 -0.186278 0.350654 13.767070 -8.363973 10.410259 4.456423 -5.503448 11.377352 1.066760 -4.043948 11.606845 -1.019220 6.530421 11.126109 -12.893304 10.702193 -11.680414 -6.545040 2.362676 -1.647606 -22.355587 1.570636 -3.376001 6.361985 -23.312319 -2.589114 0.111270 -0.124805 0.607171 -0.086344 0.364403 0.119365 -9.219361 -13.867187 -2.314639 17.515804 -6.807990 -4.825239 -9.570528 8.131412 -0.262355 -0.255550 0.068049 0.049185 -0.034856 -0.188238 -0.238254 +28.541647 161.793762 19.542185 4.836384 -19.584846 -13.983491 -9.181258 -4.602145 8.742255 -15.764236 2.256252 27.317549 -0.364263 0.098973 -0.114080 0.524402 0.241963 0.611414 7.115177 4.784397 -25.051985 8.157728 -2.640811 24.247156 -0.369422 -0.034754 0.080515 0.016462 -0.188609 0.343461 13.577951 -8.360355 9.505466 4.039819 -5.571687 11.464503 0.603761 -4.196056 12.063858 -0.785430 6.469944 11.022763 -12.940493 10.854214 -10.923961 -6.049020 3.724783 -2.050037 -19.880770 1.785222 -2.904534 6.634498 -23.258251 -2.454856 0.101281 -0.099871 0.574187 -0.072231 0.345223 0.112362 -9.214355 -15.139215 -2.807207 16.357065 -6.641982 -4.546820 -12.262469 11.375118 -0.758635 -0.254536 0.038821 0.053301 -0.050882 -0.193054 -0.238351 +28.819849 161.455246 20.582798 5.501999 -18.983150 -14.439883 -9.526916 -4.619923 9.075487 -17.114166 2.643763 27.612015 -0.383382 0.118425 -0.118071 0.527359 0.237103 0.620422 8.220951 4.635503 -22.843214 7.086633 -2.011553 19.550230 -0.373084 -0.041167 0.068217 0.023988 -0.185947 0.347996 13.764063 -8.303839 8.249594 3.652055 -5.576661 11.515009 0.061631 -4.181875 12.611379 -0.784308 6.331825 11.355735 -12.952488 10.665792 -10.932509 -5.263043 4.214811 -2.277065 -18.085043 1.730072 -2.537141 7.269808 -21.614712 -2.338888 0.094018 -0.105807 0.583146 -0.070687 0.344425 0.107690 -9.826147 -15.958713 -2.538904 14.973099 -7.633942 -4.311548 -13.660276 13.513130 -1.072121 -0.261758 0.037211 0.043573 -0.045830 -0.187614 -0.245351 +28.981285 161.012268 21.593531 6.283154 -18.216482 -14.890548 -9.775269 -4.668155 9.329054 -18.781454 3.175642 28.114075 -0.426747 0.158274 -0.117378 0.497460 0.195447 0.604459 8.982586 4.369207 -20.865597 5.802435 -1.512558 15.464101 -0.351822 -0.051487 0.070512 0.026505 -0.155678 0.326259 13.721465 -8.177870 7.020720 3.148574 -5.588692 11.484209 -0.528861 -4.155729 13.007775 -0.489836 6.371715 11.586772 -12.680111 10.763273 -10.295225 -4.610948 4.227846 -2.313578 -15.632827 1.728900 -1.975727 6.438355 -19.454004 -1.931612 0.067972 -0.143481 0.595944 -0.051967 0.313181 0.098198 -10.162242 -16.445547 -2.153110 13.438474 -8.816807 -4.008043 -14.461402 15.041906 -1.281716 -0.284887 0.052048 -0.004271 -0.016334 -0.162379 -0.263070 +29.091745 160.449585 22.696510 7.097708 -17.129730 -15.166535 -10.192272 -4.887434 9.344821 -20.191957 3.651021 29.180933 -0.438641 0.166236 -0.121271 0.502955 0.200876 0.605682 9.208413 3.916777 -19.096424 4.485482 -1.156900 11.882534 -0.351820 -0.058591 0.067507 0.036081 -0.151244 0.327244 13.243532 -7.911162 5.611916 2.762941 -5.614503 11.341988 -0.716813 -4.195790 13.419870 -0.310467 6.105711 11.929506 -12.333774 10.504126 -10.120347 -3.597796 4.366728 -2.416790 -14.227681 1.358350 -1.645980 5.930559 -17.445934 -1.661576 0.062807 -0.143912 0.596843 -0.047547 0.309774 0.098626 -10.614534 -16.990391 -1.703792 11.887816 -10.143188 -3.630639 -14.913715 16.414345 -1.447615 -0.293806 0.047669 -0.008381 -0.012970 -0.161023 -0.264786 +29.207226 159.837723 23.666128 7.712016 -16.004322 -15.367332 -9.978834 -5.258921 9.100378 -22.357061 4.474709 30.670122 -0.439226 0.163222 -0.127360 0.515837 0.220157 0.614076 9.433933 3.647732 -17.869516 2.987871 -0.884409 9.502289 -0.353731 -0.059620 0.066595 0.046321 -0.153594 0.330872 12.700594 -7.501065 4.181870 2.463449 -5.492935 11.347079 -0.698926 -4.101866 14.127007 0.180278 5.501620 12.209055 -11.815372 10.111182 -10.181724 -2.991740 3.895281 -2.436967 -12.062210 0.768945 -1.183762 5.186978 -15.957305 -1.402746 0.056840 -0.137682 0.587971 -0.044301 0.311424 0.096681 -10.285512 -17.062813 -0.946763 9.662179 -12.565763 -3.073917 -15.108890 17.430792 -1.512434 -0.299916 0.043413 0.001689 -0.013754 -0.163810 -0.263355 +29.426058 159.209763 24.614592 7.928586 -15.323689 -15.600723 -9.507494 -5.520351 9.085938 -24.409924 5.326041 31.885763 -0.418748 0.143598 -0.127389 0.544133 0.253459 0.623313 9.687757 3.499894 -16.785881 2.257941 -0.765191 8.231608 -0.366577 -0.068417 0.066878 0.053198 -0.165974 0.348757 12.889355 -7.166479 3.435863 2.314208 -5.161880 11.258159 -0.949478 -3.813627 14.326201 0.423360 4.832512 12.311110 -11.469893 9.620566 -10.045501 -2.816773 3.208280 -2.462684 -9.606656 -0.033824 -0.692229 4.037469 -14.369112 -1.091164 0.071214 -0.102609 0.576917 -0.048082 0.324757 0.111003 -10.229304 -16.947464 -0.260571 8.100140 -14.890740 -2.723325 -16.018366 16.948727 -1.421360 -0.295525 0.017982 0.031033 -0.036709 -0.185050 -0.251271 +29.766174 158.632538 25.475603 7.621066 -15.152352 -15.471346 -8.689743 -5.592311 8.784302 -26.091894 6.167400 32.777973 -0.413294 0.138755 -0.130253 0.537719 0.240441 0.636119 10.162057 3.676581 -16.570953 2.048931 -0.724808 8.049330 -0.360401 -0.073173 0.065454 0.042731 -0.185027 0.350596 13.919428 -6.928784 2.970354 2.330016 -4.719016 11.087609 -1.257635 -3.377333 14.288998 0.737286 3.976812 12.213526 -12.488499 9.621214 -9.735530 -3.279724 2.527533 -2.471359 -7.528010 -0.460287 -0.368102 3.751970 -13.351898 -0.926309 0.069560 -0.097729 0.569748 -0.045310 0.323642 0.098769 -10.915757 -16.559240 0.632193 7.309143 -16.583776 -2.514902 -15.946010 17.225903 -1.356128 -0.289680 0.009369 0.036431 -0.057897 -0.188458 -0.261622 +30.049887 158.162369 26.189802 6.962699 -14.989684 -15.508135 -7.497336 -5.706891 8.641949 -27.402998 6.910899 33.689133 -0.371358 0.115395 -0.110283 0.528690 0.237223 0.632792 10.841223 3.934454 -16.363766 1.802631 -0.675330 8.332833 -0.363488 -0.062381 0.074922 0.023858 -0.188796 0.350292 15.025036 -6.939703 3.109402 2.469576 -4.399085 10.865653 -1.578356 -3.061251 13.812459 1.058936 3.283553 12.595739 -12.710034 9.574748 -8.929901 -3.764917 1.589422 -2.094889 -6.462386 -0.273595 -0.331282 4.513516 -12.293045 -0.873566 0.084254 -0.096655 0.556048 -0.048575 0.336793 0.112239 -11.841180 -15.513090 1.390567 6.818652 -17.584158 -2.514080 -16.155731 15.101115 -0.978127 -0.263828 0.008948 0.051259 -0.065323 -0.207080 -0.245768 +30.248638 157.761292 26.728624 6.491487 -14.829825 -15.835049 -6.552793 -5.816516 8.458082 -28.358418 7.657000 34.973011 -0.372915 0.121387 -0.104146 0.503471 0.201766 0.629694 11.110970 4.290791 -16.501444 1.960814 -0.686886 9.932629 -0.355366 -0.061649 0.072800 0.005496 -0.190679 0.341966 15.290575 -6.979932 4.057720 2.806231 -4.295909 10.784944 -1.417856 -2.904050 13.238360 1.057600 3.013744 12.242680 -13.551327 9.753486 -8.635592 -4.509789 1.248641 -1.870017 -5.954648 0.346884 -0.322251 5.093081 -11.903625 -0.869440 0.083562 -0.109898 0.561624 -0.048579 0.329810 0.102686 -12.391376 -14.856591 1.550921 6.546456 -17.175508 -2.510331 -16.208431 13.476451 -0.717783 -0.255446 0.015310 0.036292 -0.067651 -0.199785 -0.254697 +30.357504 157.565948 27.039022 6.154626 -14.599262 -16.164690 -5.958722 -5.901393 8.157969 -28.582342 8.159281 36.367596 -0.385356 0.134096 -0.104726 0.494068 0.179139 0.632590 10.955996 4.573403 -16.777098 2.467204 -0.752147 11.476562 -0.352358 -0.062766 0.071203 -0.003092 -0.192168 0.342820 15.016627 -6.974363 5.258854 3.107051 -4.267134 10.837863 -1.130919 -2.852273 12.783979 1.048166 3.013133 11.610617 -13.959876 9.839225 -8.953155 -4.933079 1.305092 -1.641796 -5.789730 1.094720 -0.259236 4.756566 -11.887771 -0.829942 0.080110 -0.117927 0.575303 -0.049095 0.325325 0.094611 -12.431162 -14.316791 1.169260 7.166310 -15.805634 -2.762475 -16.535994 11.977156 -0.559312 -0.259227 0.020501 0.024483 -0.069746 -0.191966 -0.266665 +30.399561 157.528366 27.146849 5.956519 -14.886772 -16.370821 -5.440198 -5.703247 7.768578 -28.623344 8.622466 37.349514 -0.410951 0.141939 -0.105330 0.489458 0.171869 0.643956 10.699032 4.937881 -17.269531 3.223947 -0.833589 13.029739 -0.350202 -0.052367 0.074949 0.001684 -0.192338 0.326486 14.411567 -6.811465 6.490636 3.398232 -4.189300 11.032430 -0.706475 -2.769015 12.572057 0.983689 3.052675 10.958662 -14.582217 9.929221 -9.911330 -4.982390 2.009190 -1.749779 -6.529676 1.506366 -0.310794 4.260210 -11.822192 -0.800182 0.076715 -0.151632 0.592214 -0.051779 0.322743 0.086934 -12.734470 -14.029135 0.336070 8.472392 -13.112258 -3.091164 -16.294659 10.798756 -0.490094 -0.269127 0.040172 0.001546 -0.045269 -0.186964 -0.281159 +30.339607 157.476196 27.242664 5.944113 -14.881106 -15.928043 -5.248219 -5.503496 6.842326 -28.397404 8.842651 37.998096 -0.386869 0.138983 -0.101362 0.497581 0.189815 0.641138 10.461244 5.163394 -17.760872 3.605201 -0.835165 13.315157 -0.353035 -0.068152 0.079048 0.004424 -0.189802 0.348745 13.244697 -6.595880 6.948554 3.549035 -4.264536 10.971817 -0.019895 -2.948967 12.360863 1.202444 3.200784 10.330711 -14.881687 10.273718 -9.909054 -4.671034 3.270213 -1.564747 -8.216969 2.574778 -0.524523 3.975395 -13.123779 -0.834314 0.064245 -0.120932 0.565888 -0.036472 0.327934 0.097500 -12.930950 -13.512887 -0.862791 9.544818 -9.209775 -3.201771 -15.541133 8.565932 -0.340103 -0.268386 0.018952 0.025468 -0.063982 -0.195933 -0.268721 +30.199154 157.554657 27.224709 6.295666 -14.709862 -15.478904 -5.393034 -5.279015 5.930209 -28.091183 8.973037 38.481190 -0.383452 0.135332 -0.109572 0.490587 0.191550 0.638214 9.881211 5.181289 -18.090767 3.817168 -0.805951 12.824518 -0.354522 -0.069717 0.073610 0.000104 -0.193546 0.356008 11.499378 -6.062536 7.379834 3.723889 -4.253629 10.827986 0.934491 -2.997172 12.078241 1.451505 3.407788 10.225019 -15.201970 10.712162 -10.262547 -4.238020 4.296362 -1.496332 -10.667542 3.197327 -0.954672 3.816173 -14.553652 -0.948335 0.053289 -0.116241 0.559897 -0.032733 0.331886 0.086478 -13.048090 -13.251823 -1.829619 11.397662 -6.363200 -3.516469 -14.907276 7.384171 -0.305597 -0.267199 0.023045 0.034216 -0.071442 -0.186492 -0.268473 +30.131283 157.867599 27.127083 6.350891 -14.928918 -14.890300 -5.289638 -4.937490 4.974705 -27.805422 9.049233 38.566460 -0.395173 0.131492 -0.104987 0.500339 0.210715 0.627306 9.820393 5.269256 -18.177876 3.643326 -0.692824 11.978544 -0.353413 -0.058997 0.084513 0.018721 -0.179827 0.335639 10.804163 -5.714648 8.023380 3.906886 -4.057765 10.685299 1.375394 -2.820498 11.649542 0.551024 3.947881 10.107016 -14.591199 10.248961 -10.587710 -3.657234 5.385692 -1.954279 -14.252076 2.915236 -1.586665 3.151838 -13.583187 -0.965609 0.064907 -0.135342 0.565787 -0.039512 0.327558 0.101520 -12.736875 -13.191368 -2.810116 12.884055 -3.735859 -3.611952 -13.356699 6.262575 -0.253936 -0.275227 0.034386 0.020984 -0.038396 -0.190057 -0.260301 +30.111605 158.297852 27.080999 6.327734 -14.585902 -14.206551 -5.359306 -4.794890 4.228354 -27.446735 8.884121 38.345341 -0.403796 0.144675 -0.093543 0.486335 0.189070 0.613359 10.063691 5.184845 -18.003691 2.677558 -0.536818 10.488398 -0.347102 -0.037714 0.091176 0.011008 -0.155228 0.316317 10.574171 -5.597697 8.234426 3.888579 -3.978340 10.390518 1.420014 -2.722083 11.111599 -0.030063 4.150172 10.545103 -13.475779 9.625774 -10.296573 -3.357089 5.341727 -1.886962 -17.447842 2.909647 -2.170531 2.385792 -12.101093 -0.976106 0.066998 -0.171386 0.581421 -0.046523 0.316425 0.102556 -12.303658 -12.327489 -3.045515 14.666038 -2.607507 -3.861895 -11.567373 5.306784 -0.176175 -0.276049 0.064763 0.000144 -0.002968 -0.176297 -0.257062 +30.010118 158.602371 27.089525 6.282655 -14.564713 -13.151332 -5.057266 -4.493742 3.361610 -27.331770 8.838996 37.856174 -0.413529 0.153356 -0.086789 0.453945 0.159569 0.570760 10.547114 5.120882 -18.025686 1.767877 -0.429431 8.589332 -0.330096 -0.012344 0.101893 0.001757 -0.124825 0.281967 11.215186 -5.700174 7.833645 3.469628 -3.804246 9.886544 0.704192 -2.530436 10.496570 -1.342581 4.722218 11.383420 -12.442162 8.906964 -9.631481 -2.977246 5.110019 -1.654178 -21.442612 3.115887 -2.945143 2.993537 -9.796471 -1.034400 0.070500 -0.217050 0.591587 -0.054675 0.297216 0.102723 -11.741857 -11.240360 -3.277771 17.235374 -1.572505 -4.281914 -10.480584 4.944125 -0.185634 -0.275471 0.107696 -0.027396 0.043478 -0.148742 -0.246859 +29.898935 158.917343 26.994972 6.213161 -14.444826 -12.582776 -4.839992 -4.117995 3.175196 -27.255589 8.754518 37.051910 -0.472215 0.194381 -0.104352 0.446712 0.125084 0.562555 11.089897 4.981045 -17.551100 0.873825 -0.375243 6.679551 -0.315954 0.003167 0.096090 0.006840 -0.108247 0.260152 11.683347 -5.722230 7.984309 3.210825 -3.657197 9.711916 0.065912 -2.289042 10.172665 -2.822268 5.572945 11.675797 -11.301063 8.050905 -10.012334 -3.549395 5.153346 -2.059089 -24.214298 2.908840 -3.370008 3.081029 -8.124423 -1.090686 0.067837 -0.254246 0.632770 -0.068972 0.271344 0.084088 -9.875575 -10.795519 -3.909389 18.611870 -0.562996 -4.423255 -9.127356 5.554174 -0.269495 -0.299385 0.142715 -0.067743 0.079462 -0.111442 -0.267581 +29.792141 159.108276 26.855881 6.409310 -13.855268 -12.294105 -4.982192 -3.781625 3.255327 -27.215187 8.680679 36.401089 -0.515911 0.209961 -0.111730 0.475191 0.140582 0.584925 11.139560 4.701042 -17.125233 0.073008 -0.352894 5.117799 -0.324100 0.020746 0.090645 0.033808 -0.110041 0.243884 11.655437 -5.774844 7.993254 2.855658 -3.654006 9.720996 -0.471523 -2.266027 10.218013 -4.123295 6.122288 11.581326 -10.851723 7.319858 -11.291009 -5.106292 5.339411 -2.666782 -26.000406 2.945770 -3.682779 2.770024 -7.275377 -1.128248 0.085451 -0.283398 0.668822 -0.091600 0.272537 0.085837 -6.994681 -10.419511 -4.952926 19.434055 0.639557 -4.452319 -8.093126 6.758753 -0.434333 -0.315212 0.159177 -0.091834 0.115774 -0.112343 -0.279957 +29.667559 159.218079 26.644072 6.329707 -13.470401 -12.048507 -4.515739 -3.270645 3.596764 -27.524151 8.762982 35.453831 -0.482355 0.159128 -0.118366 0.513468 0.180934 0.590725 11.479113 4.616019 -16.836380 -0.586822 -0.319920 4.161694 -0.344747 0.046808 0.079332 0.038520 -0.148962 0.242711 11.915384 -5.918492 9.243279 2.744793 -3.463031 9.117044 -1.051242 -2.122634 8.834666 -5.584988 6.756280 12.108064 -9.778239 6.594338 -11.531184 -6.142281 5.580660 -2.667313 -28.813879 3.299719 -4.303535 2.492845 -7.248882 -1.153578 0.151138 -0.242555 0.678934 -0.141883 0.298923 0.099370 -5.830135 -9.849174 -5.400896 21.912331 1.298590 -4.866356 -7.401746 7.767945 -0.556075 -0.282320 0.145909 -0.056910 0.091223 -0.139554 -0.262476 +29.569347 159.172623 26.446882 6.269451 -13.174543 -11.172928 -4.097548 -2.774816 3.139869 -27.923309 8.971105 34.833061 -0.462497 0.123015 -0.113173 0.538420 0.218090 0.573582 11.572903 4.729729 -17.521500 -0.722051 -0.308501 3.688889 -0.351855 0.061679 0.088878 0.052708 -0.153924 0.226940 12.591079 -6.001792 9.605393 2.324220 -3.094104 8.426630 -1.950168 -1.864691 7.694792 -6.730220 7.192993 12.420354 -8.505079 5.825611 -11.389704 -7.119482 5.745963 -2.872986 -31.719219 3.185961 -4.805126 3.304205 -6.259524 -1.127030 0.195245 -0.224212 0.678660 -0.167409 0.305353 0.126740 -4.336369 -8.992954 -6.098037 24.572191 2.225322 -5.245615 -6.866198 7.011560 -0.562297 -0.271229 0.138055 -0.044087 0.097137 -0.160677 -0.240788 +29.477365 159.007706 26.142805 6.223991 -12.498484 -10.298424 -3.738692 -2.387608 2.456785 -28.422720 9.300655 34.640659 -0.471048 0.133093 -0.104764 0.543157 0.204161 0.576009 11.427178 4.886093 -18.521704 -0.923525 -0.307686 3.365987 -0.350125 0.073081 0.088644 0.051002 -0.146948 0.214861 12.750919 -5.924517 9.764084 2.100662 -2.863102 7.873507 -2.296029 -1.662908 6.843264 -7.721919 7.261347 12.530271 -7.858998 5.049589 -11.184621 -8.389657 5.700026 -2.899172 -34.569199 3.367752 -5.315777 2.861494 -6.232089 -1.186186 0.213304 -0.233081 0.695718 -0.182558 0.297153 0.133155 -2.617242 -7.829601 -6.629254 26.567329 3.030761 -5.472888 -5.868387 6.065035 -0.509718 -0.268240 0.143429 -0.058422 0.111732 -0.161724 -0.242175 +29.425888 158.722046 25.732248 6.169494 -11.490079 -9.553868 -3.625664 -2.133241 1.639908 -28.428530 9.564796 35.108116 -0.456315 0.112977 -0.110660 0.556463 0.213259 0.581558 10.931311 5.013136 -19.565132 -0.640476 -0.326723 3.132351 -0.359460 0.081784 0.081901 0.044623 -0.169771 0.221769 12.416652 -5.718983 10.065161 2.071599 -2.686715 7.382537 -2.161041 -1.538011 6.068128 -8.210696 7.058396 12.376423 -7.746030 4.617691 -11.547297 -10.153327 5.422749 -2.495363 -37.313187 4.306108 -6.149563 2.542232 -8.065474 -1.385875 0.238332 -0.209056 0.701367 -0.204217 0.309043 0.132348 -0.960675 -6.334895 -6.846285 28.344519 3.512999 -5.644332 -4.588552 5.497368 -0.463012 -0.254603 0.136931 -0.038455 0.090837 -0.168909 -0.238874 +29.271933 158.354004 25.185377 6.346716 -10.079624 -9.171851 -3.698564 -1.993315 1.098098 -28.446646 9.876289 35.914600 -0.451207 0.100593 -0.122999 0.576708 0.231789 0.586925 10.336311 5.082289 -20.482149 -0.636109 -0.323668 3.094872 -0.370836 0.080858 0.070322 0.048905 -0.189061 0.235718 11.830220 -5.489142 10.382275 1.836290 -2.523545 7.158545 -2.233234 -1.432093 5.679388 -8.465545 7.060418 11.915367 -7.303729 4.333837 -12.238037 -12.344754 4.444545 -2.186519 -38.594967 4.894594 -6.635296 0.700253 -10.057399 -1.546314 0.254377 -0.174870 0.705543 -0.220375 0.318856 0.130861 1.993550 -4.773497 -7.243268 29.595652 3.768939 -5.750490 -3.320504 4.763573 -0.407473 -0.251150 0.122811 -0.018115 0.067870 -0.172662 -0.237253 +29.141037 158.040817 24.586361 6.097801 -8.084673 -8.961074 -3.645773 -2.112123 0.746925 -27.999199 9.978824 37.101139 -0.461625 0.093452 -0.134490 0.584979 0.242272 0.595047 9.974692 5.021971 -20.964664 -0.988532 -0.342287 2.615807 -0.374972 0.097665 0.065072 0.055438 -0.202383 0.229859 11.922394 -5.433435 10.880869 1.674691 -2.309173 6.927113 -2.558054 -1.230235 5.207182 -8.500327 6.316292 11.783564 -6.782297 3.529876 -13.271473 -14.868720 2.971324 -2.428028 -39.410912 4.396306 -6.682635 -0.771670 -10.591772 -1.579446 0.264748 -0.185712 0.718039 -0.237223 0.327397 0.121769 4.568351 -3.170446 -7.274943 31.154720 3.604027 -5.880287 -2.058068 3.598397 -0.301977 -0.251484 0.138456 -0.016976 0.076064 -0.170125 -0.240267 +29.013243 157.729721 24.095802 5.655987 -5.207283 -8.880144 -3.534804 -2.506983 0.745981 -27.057346 9.708907 38.250732 -0.457436 0.065780 -0.130228 0.627910 0.292682 0.609451 9.162701 4.725035 -21.163876 -0.882665 -0.368821 1.779833 -0.391600 0.103372 0.069681 0.084727 -0.219092 0.221234 12.332123 -5.633175 11.093179 1.611233 -2.237217 6.666456 -2.870291 -1.225025 4.803767 -8.673305 5.568934 11.918119 -6.087243 2.604244 -13.612399 -17.395287 1.384362 -2.891054 -40.121067 3.354253 -6.523072 -2.168480 -10.411863 -1.529809 0.302995 -0.169408 0.721786 -0.257535 0.342308 0.150156 7.278218 -1.809242 -7.262040 32.195698 3.394795 -5.820215 -0.176333 2.703054 -0.238702 -0.251986 0.117321 -0.007714 0.080615 -0.205563 -0.231827 +28.812553 157.390747 23.601765 5.071200 -1.310085 -8.979477 -3.462275 -3.336172 0.716446 -25.579695 9.125874 39.875916 -0.492643 0.087285 -0.137740 0.617298 0.272974 0.604863 8.105640 4.269726 -21.185204 -0.702254 -0.442023 0.841704 -0.384840 0.106259 0.069463 0.087386 -0.209265 0.208792 12.515598 -6.103667 11.171701 1.573356 -2.628595 6.241263 -3.018596 -1.586869 4.192698 -8.397943 4.472079 12.649495 -5.669162 1.668499 -13.462651 -19.601292 0.114812 -3.444099 -40.997837 2.215185 -6.293734 -3.315649 -10.089608 -1.519195 0.295370 -0.202706 0.742351 -0.256873 0.332259 0.141809 9.265132 -0.571831 -7.364284 34.286995 3.681692 -5.850706 1.306664 1.601235 -0.169276 -0.269453 0.138047 -0.033514 0.103644 -0.188527 -0.243393 +28.608938 157.042282 22.977921 4.519161 2.013033 -8.804413 -3.394229 -3.978602 0.373990 -23.799622 8.386347 41.092442 -0.514966 0.115132 -0.143671 0.596098 0.245459 0.579663 7.000577 4.003871 -21.745338 -0.159948 -0.485320 0.280459 -0.372178 0.103611 0.066446 0.083532 -0.184906 0.202915 12.647942 -6.286822 11.069590 1.561930 -2.801963 5.771015 -3.063146 -1.741449 3.537047 -8.382360 3.646526 13.512518 -4.685461 0.533655 -12.818738 -21.337523 -0.555319 -4.372241 -42.785118 0.400613 -6.014304 -3.957402 -9.570695 -1.536533 0.278947 -0.221616 0.748259 -0.249836 0.314032 0.134122 11.084444 0.315532 -7.665232 36.468132 4.319850 -5.811065 2.618415 0.804768 -0.126575 -0.282495 0.155875 -0.051592 0.122192 -0.160442 -0.242672 +28.269754 156.747116 22.085966 4.339755 5.296126 -8.639063 -3.617352 -4.591505 -0.341889 -21.957815 7.643816 42.464226 -0.505066 0.107336 -0.159795 0.610407 0.263906 0.591155 5.706355 3.739227 -22.587250 -0.090952 -0.500829 0.227994 -0.385572 0.111254 0.050840 0.083885 -0.204308 0.223617 11.834533 -6.071802 11.287779 1.570490 -2.841987 5.399930 -2.697854 -1.820980 3.000845 -8.001896 2.335232 14.489170 -4.157847 -0.487822 -13.120970 -23.117996 -1.308810 -5.490103 -44.473148 -1.976666 -5.616940 -4.536611 -9.536870 -1.556270 0.281131 -0.208150 0.746406 -0.261006 0.334910 0.123406 12.868900 1.404231 -8.020859 39.191956 5.215048 -5.776736 3.076337 0.101030 -0.083253 -0.276038 0.158793 -0.022358 0.106005 -0.158756 -0.236427 +27.906647 156.365646 20.963110 4.410641 8.778469 -8.338996 -4.177017 -5.352042 -1.658212 -20.224306 6.942038 44.196724 -0.535718 0.119804 -0.180802 0.624613 0.269391 0.609464 3.839717 3.319544 -23.641001 0.223997 -0.524266 0.164661 -0.397049 0.108205 0.042280 0.094038 -0.221937 0.235733 10.139997 -5.523827 11.436276 1.734672 -2.940818 5.203216 -1.683958 -1.921312 2.758838 -7.059371 0.565439 15.375489 -4.164672 -1.303845 -13.411613 -24.844503 -2.740470 -6.342815 -46.644436 -4.423630 -5.258162 -4.806755 -10.321457 -1.675398 0.277285 -0.214437 0.768935 -0.265002 0.348155 0.115994 14.550628 3.274301 -8.091605 41.522835 6.248281 -5.643144 3.137065 -0.153997 -0.054676 -0.296286 0.163144 -0.024494 0.102438 -0.154571 -0.253131 +27.595140 156.091187 19.665060 4.221858 12.222312 -7.969398 -4.574879 -6.088915 -3.173878 -18.257891 6.093777 45.741943 -0.570213 0.118552 -0.205769 0.633910 0.272650 0.639866 1.913334 3.026387 -25.046480 0.575317 -0.519392 0.811232 -0.405243 0.130598 0.030969 0.102196 -0.251892 0.227176 9.002395 -5.115981 11.744984 1.919923 -2.989323 5.034914 -0.848791 -1.953063 2.456093 -6.277222 -1.312865 16.256500 -3.939985 -2.269178 -14.331126 -26.406481 -4.466504 -6.793521 -49.275414 -6.716758 -5.002645 -5.024380 -12.097875 -1.867526 0.285072 -0.248475 0.802474 -0.285292 0.365618 0.092980 15.311470 5.812951 -7.629855 43.943398 7.164374 -5.528250 3.167697 0.660597 -0.068037 -0.305083 0.190886 -0.035135 0.111840 -0.150457 -0.276370 +27.116629 155.906204 18.604557 4.329813 15.240598 -7.697303 -4.911915 -6.451137 -4.112158 -16.486551 5.374850 46.628201 -0.605056 0.123380 -0.212928 0.647117 0.281501 0.666244 0.013548 2.800500 -26.351377 0.832223 -0.486264 2.147160 -0.419245 0.161164 0.023121 0.119243 -0.262878 0.206694 7.971820 -4.710463 11.501247 1.787841 -3.014975 5.102662 -0.466259 -1.969558 2.622693 -6.092480 -2.862349 17.486681 -3.411625 -3.446512 -15.150769 -27.364672 -6.139272 -7.003966 -51.347263 -8.929889 -4.592390 -5.766596 -14.325867 -2.017407 0.300741 -0.300162 0.839764 -0.309215 0.383186 0.089105 16.131170 8.795153 -7.216225 46.506470 8.447229 -5.371361 2.538527 1.778814 -0.133308 -0.312699 0.224473 -0.058877 0.152143 -0.153341 -0.289569 +26.635674 155.817032 17.676298 4.469336 18.438759 -7.554540 -5.331704 -6.904976 -4.792204 -14.642678 4.535426 47.446972 -0.618371 0.113436 -0.214892 0.687401 0.323274 0.695304 -2.268661 2.399260 -27.167358 1.772370 -0.456835 3.508718 -0.437950 0.185195 0.020500 0.147397 -0.273279 0.195719 6.751513 -4.332043 11.024366 1.817539 -3.168061 5.341701 0.210218 -2.161468 3.137522 -6.325934 -3.960777 18.357395 -2.367594 -4.660659 -16.102848 -27.928358 -7.870063 -7.119432 -53.491894 -11.318644 -4.021638 -6.836498 -16.664190 -2.095754 0.327490 -0.317331 0.859239 -0.333751 0.402476 0.102485 17.375175 11.792508 -6.971258 47.440346 10.014883 -4.880489 2.702505 2.605687 -0.191300 -0.316295 0.233355 -0.059265 0.180016 -0.174938 -0.287606 +26.251764 155.855118 16.888285 4.535508 21.535776 -7.519525 -5.677888 -7.207882 -5.377047 -12.677802 3.673854 48.068851 -0.656320 0.115019 -0.226504 0.716271 0.359364 0.704910 -4.807043 2.063550 -27.888044 3.103678 -0.505970 5.918813 -0.447647 0.195726 0.025226 0.181959 -0.272186 0.180820 6.133019 -4.163436 9.891955 1.622010 -3.363647 5.872842 0.427960 -2.368970 4.249702 -6.390102 -4.814962 19.150347 -1.610486 -5.565776 -17.028254 -27.707073 -9.734378 -6.959610 -55.536041 -13.697385 -3.317946 -8.666479 -19.988319 -2.044225 0.337919 -0.347150 0.882842 -0.343954 0.410293 0.113205 17.414997 14.978840 -6.749334 49.280174 11.872175 -4.524707 2.254881 4.816284 -0.423550 -0.340940 0.248493 -0.074888 0.216715 -0.180830 -0.291352 +25.764318 156.128082 15.907289 4.696322 23.829775 -7.570925 -5.907414 -7.131886 -5.943677 -11.098533 3.144655 48.323887 -0.666339 0.097057 -0.239882 0.761246 0.430180 0.699197 -7.295033 1.968094 -28.689085 4.835948 -0.610713 8.912459 -0.461944 0.194954 0.024439 0.226890 -0.271691 0.178677 5.566652 -3.804609 9.249895 1.419187 -3.276936 6.583102 0.480642 -2.359561 5.542003 -6.753961 -5.431414 19.576117 -0.345162 -6.672997 -18.085983 -27.361067 -12.277717 -6.614029 -56.936787 -16.366074 -2.489535 -10.271459 -24.236067 -1.913069 0.353874 -0.331155 0.875917 -0.354175 0.419434 0.133639 17.754854 18.857485 -6.875865 49.469421 14.636652 -3.550971 2.458959 6.047445 -0.543968 -0.357518 0.237408 -0.057832 0.234577 -0.192971 -0.271944 +25.166931 156.644455 14.819669 4.844276 25.722618 -7.818984 -6.154426 -6.876193 -6.353540 -9.450631 2.650651 48.336094 -0.672981 0.080640 -0.254259 0.803702 0.502213 0.693764 -9.802073 2.152521 -29.723602 7.316015 -0.910602 13.033252 -0.474850 0.199401 0.024266 0.269082 -0.266669 0.179246 5.129659 -3.366827 9.029748 1.284563 -3.084219 7.361532 0.465062 -2.239733 6.852462 -7.239060 -6.050381 20.090130 0.949662 -7.809561 -19.400423 -26.716757 -15.319329 -6.205644 -57.701885 -19.241638 -1.414664 -12.323476 -28.820805 -1.485177 0.363551 -0.324045 0.865740 -0.362475 0.431046 0.149655 17.591602 22.878622 -7.020157 48.983776 17.483776 -2.602768 3.094691 8.183731 -0.684511 -0.371071 0.236891 -0.036156 0.257959 -0.200740 -0.247467 +24.512119 157.271927 13.984859 4.441242 27.460194 -8.137640 -5.571211 -6.410706 -6.516873 -8.092252 2.286307 47.531002 -0.675214 0.087608 -0.253799 0.827782 0.543276 0.683586 -11.715779 2.656454 -30.708874 9.936842 -1.456143 17.554523 -0.485444 0.183860 0.019519 0.297041 -0.247476 0.193378 5.164411 -3.186732 8.474540 1.143474 -2.992933 8.102832 0.268836 -2.193507 8.180728 -7.285074 -6.809966 20.031612 1.621186 -8.668216 -19.973759 -25.850964 -17.966930 -5.773623 -58.102531 -22.097084 -0.165981 -14.916681 -33.913589 -0.617247 0.356965 -0.308319 0.850025 -0.354526 0.434312 0.168512 16.538921 25.997391 -7.274403 48.629860 20.112856 -1.926184 3.994140 12.185192 -0.943659 -0.383326 0.222024 -0.022433 0.271206 -0.204431 -0.224937 +23.814491 158.199539 13.294817 3.256044 29.063789 -9.155458 -4.263346 -5.738843 -5.939646 -6.523683 1.809567 45.968437 -0.671084 0.064617 -0.262712 0.855866 0.595954 0.669672 -12.887477 3.567952 -30.921839 13.017015 -2.249657 21.916311 -0.492669 0.184214 0.021121 0.325015 -0.246415 0.191221 5.819688 -3.089695 8.592896 1.310256 -2.822544 8.745311 0.045570 -2.052399 9.162944 -7.495933 -7.501566 20.265594 2.902846 -9.537364 -20.967094 -25.429478 -20.671041 -5.166546 -57.896339 -25.034472 1.128080 -16.931236 -39.738041 0.470246 0.371573 -0.289137 0.837893 -0.362820 0.439639 0.183195 15.678104 28.474581 -7.579505 47.163280 22.666531 -1.377524 5.270758 16.495649 -1.041277 -0.389334 0.213223 -0.003287 0.278387 -0.213085 -0.204013 +23.040192 159.286911 12.727063 2.085419 30.759121 -10.160823 -3.242544 -5.104708 -5.097264 -4.353311 1.037138 44.016834 -0.671207 0.061167 -0.265493 0.869985 0.620600 0.648996 -13.886631 4.521673 -30.881811 16.438240 -3.338301 26.047087 -0.487922 0.175094 0.022171 0.344452 -0.230953 0.186936 6.452976 -3.046989 8.438512 1.410854 -2.733289 9.483829 -0.280487 -1.988145 10.343064 -7.657225 -7.926242 20.310543 4.373731 -10.259583 -21.355604 -24.526140 -23.240887 -4.442122 -57.102985 -28.010933 2.449670 -18.336750 -46.795601 1.761278 0.376816 -0.265207 0.823757 -0.362175 0.426435 0.196084 14.769696 30.711937 -7.982075 45.514183 25.363480 -0.828398 5.838742 20.116573 -1.104372 -0.396609 0.197824 0.001988 0.282951 -0.213551 -0.188292 +22.207411 160.471512 12.184043 1.061291 32.598038 -10.967278 -2.461814 -4.708122 -4.387957 -2.097421 0.138652 41.779812 -0.668624 0.066232 -0.263059 0.890615 0.651212 0.635969 -14.800729 5.151631 -30.539011 19.701668 -4.647790 29.593250 -0.493659 0.152623 0.025192 0.365140 -0.213416 0.201603 6.798256 -3.182018 8.022310 1.412541 -2.873770 10.164309 -0.609947 -2.162307 11.538822 -7.301456 -8.453079 20.477814 5.060830 -10.631055 -21.281103 -23.219326 -26.046133 -4.101646 -55.558712 -30.929806 3.858132 -18.512182 -51.258770 2.607941 0.371746 -0.237674 0.807912 -0.349131 0.424182 0.219410 13.230483 32.914146 -8.366644 44.366531 27.835798 -0.350682 5.837532 23.977058 -1.295515 -0.410005 0.172704 0.013661 0.282058 -0.221510 -0.171468 +21.438578 161.726349 11.673812 -0.040830 34.313217 -11.628920 -1.673478 -4.303185 -3.717794 -0.272738 -0.541548 39.043907 -0.685965 0.086447 -0.266125 0.904197 0.670933 0.625360 -15.100551 5.763575 -30.338890 22.089275 -6.028378 33.239742 -0.490705 0.133836 0.024913 0.388916 -0.189638 0.207924 7.654266 -3.481496 7.124373 1.258029 -3.029691 10.991680 -1.254539 -2.294507 13.125048 -7.143106 -8.871862 19.970989 5.773728 -11.021746 -21.883251 -20.821547 -28.345280 -4.319683 -54.832836 -34.347569 5.611211 -15.797197 -55.249847 1.883756 0.356126 -0.227107 0.797248 -0.335097 0.411352 0.229674 10.472245 34.357101 -9.389892 44.083149 30.640524 0.378157 5.566575 28.412239 -1.608877 -0.430060 0.160694 0.010856 0.295812 -0.215696 -0.162428 +20.723335 163.032257 11.191214 -0.926990 35.945194 -12.042765 -1.089631 -4.046011 -3.182861 1.154779 -1.059013 36.375290 -0.726320 0.131717 -0.266789 0.882876 0.653905 0.585654 -15.328492 6.021835 -29.709166 24.265753 -7.479314 36.149906 -0.466941 0.111024 0.029957 0.404861 -0.137648 0.197424 8.484181 -3.707858 6.060759 1.080041 -3.164773 11.800040 -1.876318 -2.343385 14.762287 -7.194626 -9.298961 19.137547 6.506810 -11.665500 -22.415083 -17.928062 -30.181505 -4.954783 -54.551098 -38.053963 7.641475 -9.352050 -57.531986 -1.280784 0.319570 -0.247312 0.788946 -0.307776 0.372475 0.230132 7.571458 35.000576 -10.470747 43.392273 33.488678 1.136706 5.233444 33.810329 -1.940118 -0.461675 0.169901 -0.022040 0.335063 -0.181301 -0.156481 +19.941734 164.258789 10.768316 -1.523354 37.582172 -12.106589 -0.611570 -3.879785 -2.685056 2.126771 -1.410940 33.377792 -0.733239 0.182211 -0.239170 0.870619 0.641316 0.548350 -15.162399 6.003363 -28.972998 25.431137 -8.677767 38.719017 -0.444807 0.074815 0.037785 0.421033 -0.068291 0.197358 8.695419 -3.708487 4.763141 0.921431 -3.203096 12.574789 -2.140428 -2.400179 16.520481 -6.731329 -9.662606 17.750376 7.522861 -12.259892 -22.043783 -14.683785 -31.439707 -6.016951 -53.927593 -41.983082 9.688093 -0.180859 -57.220863 -6.157604 0.282603 -0.235744 0.753213 -0.268739 0.327572 0.255280 5.366356 34.975170 -11.412416 41.867855 36.594833 2.093506 4.509552 38.822159 -2.274927 -0.481455 0.145630 -0.043949 0.365524 -0.168434 -0.134852 +19.230129 165.376297 10.375430 -1.902600 38.971424 -11.598115 -0.258452 -3.666492 -2.409913 2.587248 -1.527363 30.199461 -0.736054 0.227359 -0.212117 0.860992 0.633863 0.510839 -15.075758 5.809106 -28.478971 26.066092 -9.787413 41.197960 -0.418194 0.027713 0.051263 0.435082 -0.002006 0.202367 8.911913 -3.606342 3.203442 0.729307 -3.134586 13.084082 -2.291216 -2.388950 18.104635 -6.328229 -10.260142 16.036341 7.892051 -13.038393 -21.588837 -10.477677 -31.491276 -7.363132 -54.548618 -45.883717 12.365843 8.642369 -56.008240 -10.829762 0.241057 -0.213507 0.704999 -0.222102 0.277010 0.278385 2.357427 34.070740 -12.345271 41.152473 39.719810 3.448417 2.151344 44.600342 -3.408776 -0.504541 0.110998 -0.054951 0.384940 -0.156536 -0.111522 +18.687124 166.347504 9.974314 -2.310689 40.279587 -11.006674 0.100357 -3.499732 -2.295786 2.487200 -1.474953 27.307718 -0.744386 0.272430 -0.183019 0.840567 0.626667 0.461808 -14.897219 5.382519 -27.718615 26.136374 -10.742693 43.419033 -0.377804 -0.030645 0.068254 0.460318 0.069421 0.190501 9.313206 -3.503044 1.506375 0.548280 -2.994091 13.425483 -2.409700 -2.314191 19.640181 -5.704848 -10.987378 14.186208 7.560336 -13.808394 -20.347181 -6.513134 -31.244968 -8.634365 -54.938385 -49.560467 14.906215 16.944607 -53.622711 -14.881430 0.191178 -0.196107 0.638077 -0.162955 0.210821 0.301725 -0.985180 33.011467 -12.947491 39.825062 42.177673 4.524916 -2.254645 50.302353 -5.802182 -0.532254 0.067030 -0.077917 0.411554 -0.143862 -0.088877 +18.060892 167.234177 9.574602 -2.503239 41.375919 -10.348382 0.313622 -3.236461 -2.151685 2.520932 -1.417373 24.281450 -0.759291 0.314480 -0.153257 0.836363 0.640097 0.422754 -14.572427 5.147749 -26.804932 25.770674 -11.338579 45.355209 -0.348792 -0.076431 0.083798 0.497903 0.142219 0.175041 9.530257 -3.335175 0.092881 0.380000 -2.821460 13.801282 -2.498828 -2.203831 21.189375 -5.234855 -11.602422 12.219041 7.642187 -14.588822 -19.976063 -2.457355 -30.242067 -10.026138 -55.791397 -53.192753 17.921051 23.789381 -52.122158 -18.169596 0.150129 -0.190574 0.582111 -0.114369 0.155109 0.331486 -3.918231 31.523756 -13.670365 38.664120 44.947613 5.792022 -8.619454 54.821968 -9.548865 -0.561699 0.033013 -0.102164 0.457572 -0.137013 -0.062737 +17.522770 167.861908 9.231841 -2.534388 41.928226 -9.327371 0.399138 -2.895864 -2.123811 2.440695 -1.301455 21.389631 -0.742432 0.333099 -0.120285 0.845508 0.682946 0.365261 -14.100406 5.117535 -25.721895 24.800455 -11.346853 46.610592 -0.315162 -0.157269 0.101760 0.545211 0.209812 0.171700 9.921843 -2.921320 -1.544459 0.157356 -2.319041 13.918758 -2.748673 -1.888437 22.535528 -4.519524 -12.665752 10.148438 7.236514 -15.656990 -18.376480 1.733468 -28.637024 -11.167365 -57.143940 -57.041912 22.006670 29.470840 -50.953091 -20.705275 0.114865 -0.121885 0.481518 -0.052253 0.089502 0.378465 -6.999198 29.707127 -14.125741 38.072811 47.070999 7.218060 -16.802546 57.681587 -14.751307 -0.585693 -0.054971 -0.094647 0.464285 -0.147754 -0.017224 +17.038029 168.255035 8.950584 -2.648692 42.096210 -8.263953 0.629836 -2.525081 -2.022045 1.749012 -1.041924 18.632061 -0.732197 0.378130 -0.074694 0.830158 0.691727 0.306290 -13.192470 5.209767 -24.292976 23.231970 -10.726810 46.869068 -0.269955 -0.238711 0.123302 0.580649 0.298648 0.163671 10.110391 -2.472841 -3.038821 -0.014700 -1.840771 13.869283 -2.902485 -1.543239 23.565681 -3.540960 -13.477184 7.882901 6.449614 -16.431211 -16.352365 5.223634 -26.780432 -11.762089 -58.829777 -60.872795 26.695683 35.853588 -49.717781 -23.559652 0.057281 -0.078550 0.380397 0.024739 0.010770 0.419542 -9.650103 27.694958 -14.293766 36.838371 49.284142 8.743846 -25.710646 59.587105 -20.479643 -0.611490 -0.129753 -0.108443 0.487490 -0.146928 0.022273 +16.562016 168.486069 8.716304 -2.360321 42.547981 -6.863999 0.466906 -2.172605 -1.829564 1.126465 -0.839530 15.524995 -0.769601 0.453560 -0.048732 0.807118 0.675704 0.257755 -12.430118 5.072149 -22.558023 21.572147 -9.887450 46.221214 -0.222039 -0.324161 0.142270 0.614630 0.386305 0.158941 9.576869 -2.186552 -4.422950 -0.180364 -1.668776 13.638829 -2.730791 -1.370388 24.293818 -2.587760 -13.965160 5.836884 5.085770 -16.803114 -14.604775 7.846695 -24.405348 -12.159298 -61.781494 -64.193207 32.301254 40.748821 -47.924335 -25.388180 -0.020840 -0.064476 0.311044 0.107970 -0.072615 0.440397 -11.862582 25.530787 -14.400235 35.648048 51.772503 10.497199 -33.838905 59.846287 -25.374178 -0.664033 -0.183772 -0.146645 0.519173 -0.122722 0.034068 +16.009865 168.634048 8.549294 -1.814955 42.953789 -5.568084 0.031287 -1.872860 -1.411179 0.596582 -0.703577 12.976329 -0.777980 0.485012 -0.023631 0.792603 0.676827 0.222472 -11.626057 4.741498 -20.150265 19.584585 -8.669704 44.430088 -0.187022 -0.375358 0.157717 0.641319 0.443979 0.142626 8.949219 -1.913196 -5.546807 -0.470347 -1.443075 13.487349 -2.863154 -1.153778 24.905415 -1.644998 -14.329818 4.590631 4.553100 -17.053093 -13.341921 10.106936 -22.558868 -12.292032 -63.396645 -67.226295 37.006577 44.856899 -45.988918 -26.510292 -0.060908 -0.050900 0.252072 0.159145 -0.128951 0.460674 -13.562342 23.763559 -13.936574 34.601311 53.841854 11.711248 -43.928200 58.926441 -31.312250 -0.686214 -0.225371 -0.169588 0.542338 -0.119236 0.050895 +15.536944 168.705414 8.440519 -1.038251 42.629860 -4.394301 -0.633712 -1.500186 -0.438065 -0.022119 -0.585793 10.348891 -0.752269 0.488227 -0.005131 0.799392 0.688347 0.212396 -10.569515 4.390658 -16.915546 16.835037 -6.841002 41.077587 -0.179123 -0.406784 0.154293 0.650265 0.459344 0.152208 8.221095 -1.580770 -6.471900 -0.710672 -1.146535 13.495934 -3.064167 -0.794146 25.429632 -1.303423 -14.681625 3.763892 4.386237 -17.530979 -12.686896 11.745230 -21.478956 -12.116253 -62.285782 -69.919273 39.350536 48.310139 -44.224766 -27.180784 -0.064499 -0.003519 0.209089 0.175172 -0.146834 0.478663 -14.427497 22.758970 -13.160471 31.205866 55.644516 11.563784 -52.172802 57.433857 -35.489258 -0.676917 -0.272461 -0.154745 0.525079 -0.133517 0.071587 +15.070495 168.574783 8.431156 -0.290038 42.273487 -3.314117 -1.346378 -1.121383 0.574778 -0.007437 -0.550819 7.692607 -0.771068 0.530366 0.009406 0.789224 0.678371 0.178775 -9.502197 3.825621 -12.976598 14.075216 -4.958249 35.806370 -0.152059 -0.453248 0.161913 0.669011 0.512138 0.148402 7.181945 -1.177414 -7.538620 -0.857186 -0.869071 13.623814 -2.982444 -0.418474 26.178905 -0.767168 -14.661461 2.656714 4.355723 -17.809359 -11.948652 13.751911 -19.806362 -12.209868 -61.211620 -72.682259 41.933270 51.195114 -42.515987 -27.577179 -0.099852 0.016591 0.172632 0.214672 -0.197516 0.493878 -14.988359 21.376059 -12.565054 26.983641 57.292175 10.934783 -58.241360 55.737331 -37.933319 -0.702727 -0.306188 -0.176072 0.541285 -0.118596 0.082050 +14.508222 168.289093 8.495703 0.605823 41.100864 -2.069208 -1.978783 -0.650863 1.547334 0.012345 -0.480817 4.796735 -0.765250 0.549686 0.017632 0.776435 0.671852 0.139625 -8.139223 3.516699 -9.253458 10.278966 -2.867769 30.162609 -0.136097 -0.492970 0.163875 0.672279 0.544928 0.159414 5.811234 -0.347855 -8.556785 -0.860641 -0.195246 13.614306 -2.621492 0.313664 26.581839 -0.233719 -14.977542 2.000534 4.382761 -18.226637 -11.305650 15.210334 -18.234890 -12.115201 -60.617699 -75.596184 45.058079 53.098255 -40.487617 -27.222111 -0.122294 0.053563 0.137074 0.242115 -0.227497 0.505975 -15.074025 20.344606 -11.782967 22.344997 58.349854 9.735992 -62.368271 53.936634 -38.846844 -0.712225 -0.337819 -0.172621 0.532582 -0.105669 0.100521 +14.005503 167.818817 8.543565 1.570004 40.213821 -0.763812 -2.444937 -0.305819 1.997408 -0.202848 -0.384317 2.556235 -0.763432 0.599497 0.028844 0.734299 0.617382 0.102421 -7.262449 2.989761 -5.700957 6.758444 -1.382336 24.437973 -0.110707 -0.531431 0.161715 0.649859 0.588326 0.179662 4.196081 0.331002 -9.528341 -0.864063 0.316018 13.452916 -2.092408 0.920868 26.720657 0.351708 -15.286449 1.648702 4.003334 -18.496925 -10.152276 16.044497 -16.629969 -11.759386 -60.653557 -77.979538 48.357933 54.962593 -39.052269 -27.124033 -0.172080 0.071233 0.106281 0.282046 -0.265232 0.498368 -14.951234 19.369461 -10.925515 18.468014 59.050404 8.662132 -65.705521 52.258087 -39.281223 -0.721355 -0.351674 -0.179873 0.522828 -0.070832 0.107448 +13.479224 167.390640 8.594753 2.543075 38.417313 0.188307 -2.849252 0.078763 2.639567 -0.597739 -0.263363 0.481669 -0.782891 0.644232 0.040970 0.683540 0.554225 0.070443 -6.856147 2.406003 -2.312422 3.704601 -0.399372 18.905346 -0.081107 -0.537342 0.166768 0.630584 0.633238 0.163858 2.970963 1.115824 -10.271321 -1.008731 1.037758 13.559465 -2.018279 1.844362 27.053228 0.690664 -15.294487 1.604647 4.228273 -18.658215 -9.583572 16.504675 -15.130298 -11.630474 -58.156033 -79.718330 48.832214 56.228195 -38.777798 -27.207626 -0.209274 0.036202 0.102754 0.306287 -0.303561 0.484513 -14.689356 18.322502 -10.099127 14.392219 59.350132 7.294395 -70.056129 51.601223 -41.053566 -0.731632 -0.328415 -0.218878 0.551784 -0.033565 0.102327 +12.958972 167.067917 8.349648 2.702205 36.701839 0.486348 -2.678700 0.306702 2.864173 -1.107628 -0.172925 -0.808694 -0.828277 0.705107 0.035266 0.654131 0.523373 0.043678 -6.154392 1.836419 0.406537 1.431441 0.115053 13.854359 -0.060211 -0.564655 0.165787 0.639485 0.679597 0.167526 3.005822 1.667304 -10.683477 -1.114153 1.600607 13.901406 -2.317943 2.675538 27.748314 0.799350 -15.130547 0.893629 3.781889 -18.618504 -9.551449 16.266733 -13.564447 -11.777896 -54.775467 -81.217941 47.960983 58.047916 -38.559799 -27.637945 -0.266995 0.008268 0.095511 0.344565 -0.336193 0.472432 -14.631280 17.046846 -9.877468 10.202535 59.665512 5.718135 -74.244888 51.105705 -42.939346 -0.767504 -0.315106 -0.251355 0.584179 0.009071 0.096686 +12.452128 167.009888 8.077014 2.461706 35.263344 0.139519 -2.206611 0.438580 3.187374 -1.335386 -0.128689 -1.583616 -0.816248 0.700272 0.045012 0.634431 0.509062 0.017517 -5.480972 1.246305 2.747751 0.018858 0.324239 9.648031 -0.051052 -0.548562 0.174625 0.628151 0.697241 0.151840 4.024122 2.058709 -10.749973 -1.356176 2.137061 14.453202 -3.210816 3.475378 28.347219 0.293650 -14.566850 0.815414 4.702866 -18.753145 -9.856362 16.209381 -13.630665 -11.716234 -43.786751 -81.348572 38.521572 59.631126 -39.055981 -28.324064 -0.262782 -0.005497 0.093871 0.339756 -0.344698 0.475108 -14.263066 16.940414 -9.636518 5.357641 59.554520 3.299359 -76.598694 50.618366 -43.652618 -0.758523 -0.294897 -0.258568 0.602120 0.019008 0.108223 +11.955856 167.041473 7.815316 2.200115 34.074883 0.206242 -1.639331 0.305574 2.427539 -1.750045 -0.101623 -1.330747 -0.835996 0.736500 0.046488 0.597050 0.454322 -0.014514 -4.746152 0.807878 3.998532 -1.084824 0.383308 6.127007 -0.037535 -0.547111 0.178894 0.603604 0.729274 0.152477 5.311884 2.517585 -10.576951 -1.705931 2.709427 14.624536 -4.301122 4.300492 28.432043 -0.188175 -14.214143 0.843948 5.385569 -19.039980 -10.034118 16.288984 -13.570398 -11.571184 -37.661831 -81.309227 33.572430 61.485229 -39.728085 -29.360188 -0.282154 -0.033810 0.115317 0.347612 -0.361860 0.466673 -13.979778 16.668598 -9.179684 3.202501 59.799908 2.375279 -80.272774 50.243973 -45.521988 -0.768399 -0.263099 -0.284966 0.620532 0.054882 0.105502 +11.463541 167.175400 7.615250 1.644520 33.440304 0.253261 -0.925995 0.126036 1.482330 -1.911165 -0.098357 -0.955948 -0.813821 0.729590 0.060691 0.579135 0.431806 -0.022549 -3.619632 0.554533 4.396863 -2.148628 0.452830 4.018525 -0.033604 -0.539301 0.188081 0.580839 0.732228 0.150398 6.368691 2.689648 -10.363791 -1.849836 3.009660 14.549895 -4.934672 4.726927 28.222124 -0.745950 -13.666760 1.106444 5.366399 -18.867844 -9.584204 16.453615 -13.829520 -10.843252 -34.535763 -80.701866 30.749111 64.715393 -40.373333 -31.275719 -0.278773 -0.037142 0.113378 0.347625 -0.362174 0.468746 -14.035901 16.653095 -8.824483 2.001298 60.208763 1.997700 -82.096458 49.898731 -46.284203 -0.755234 -0.256565 -0.283784 0.615073 0.053241 0.108455 +10.993239 167.237579 7.539951 1.295010 33.481121 0.521082 -0.324293 -0.038454 0.457881 -2.060845 -0.079292 -0.507485 -0.823459 0.768823 0.068638 0.528464 0.364369 -0.034665 -2.861637 0.395406 4.423781 -2.633402 0.431289 2.594620 -0.007050 -0.549561 0.188721 0.551500 0.755267 0.147824 6.933473 2.812271 -10.289229 -1.887934 3.156713 14.240685 -5.206841 5.012040 27.864391 -1.051928 -13.655925 1.466474 4.331422 -18.791845 -8.415689 16.597418 -13.252803 -10.271108 -36.878922 -80.977745 33.450073 67.122765 -40.310059 -32.465187 -0.319352 -0.065203 0.105016 0.374625 -0.389421 0.444431 -14.540864 15.856384 -8.482399 1.997767 60.547745 2.622039 -84.576508 50.054199 -47.953842 -0.757898 -0.240801 -0.308830 0.619544 0.084014 0.095659 +10.492373 167.312592 7.450802 1.196500 33.919628 0.617233 -0.041295 -0.115466 -0.034266 -1.928445 -0.085836 -0.449756 -0.815569 0.776384 0.075136 0.506014 0.325132 -0.026379 -2.398987 0.297562 4.517623 -2.742403 0.401983 1.924661 -0.000041 -0.552527 0.185534 0.525945 0.747547 0.150814 6.901422 2.838551 -10.187568 -1.849278 3.180538 14.128212 -5.088349 5.059543 27.636864 -1.227593 -13.682513 1.796692 3.468035 -18.599436 -7.448743 16.908384 -13.486770 -9.805251 -34.709290 -80.651840 31.541033 68.689369 -40.359444 -33.268707 -0.326670 -0.066251 0.104823 0.379735 -0.394237 0.430956 -14.917236 16.137800 -8.020524 1.573260 60.114002 2.577746 -86.773041 50.163651 -49.522564 -0.747943 -0.242738 -0.313466 0.600900 0.087909 0.082838 +10.042785 167.362900 7.409591 1.103975 33.979431 0.673347 0.195685 -0.075464 -0.116285 -1.825712 -0.088740 -0.806052 -0.795450 0.758017 0.076582 0.511727 0.330893 -0.024579 -2.086533 0.226044 4.401073 -2.553589 0.370667 1.487296 -0.000196 -0.561265 0.183746 0.522715 0.731606 0.154432 6.877834 2.899671 -10.189466 -1.852989 3.277582 14.061892 -5.094145 5.133415 27.595903 -1.399282 -13.522391 2.257778 3.224619 -18.447943 -6.748367 17.225178 -13.233134 -9.625971 -33.884827 -80.705353 30.981220 69.179573 -40.153439 -33.357933 -0.313078 -0.034787 0.092228 0.376603 -0.393029 0.435271 -15.017733 15.959023 -7.926957 1.357403 60.508221 2.697932 -86.840057 49.996147 -49.352970 -0.736011 -0.267721 -0.298900 0.572397 0.073574 0.084829 +9.616451 167.313934 7.383577 1.220538 34.230259 0.622406 0.230571 -0.035240 0.042251 -1.527127 -0.106024 -1.134634 -0.765902 0.743211 0.082363 0.514276 0.332998 -0.027963 -1.871850 0.210533 4.445139 -2.460114 0.367419 1.524452 -0.002708 -0.561681 0.185297 0.510960 0.726979 0.164340 6.260054 2.925602 -10.205591 -1.795749 3.273537 14.131217 -4.743575 5.062759 27.673952 -1.304189 -13.308847 2.781027 3.625407 -18.327415 -6.301701 17.540573 -13.057667 -9.729997 -32.780350 -80.868057 30.153566 68.420479 -40.181412 -32.936153 -0.304163 -0.007525 0.081055 0.373941 -0.388547 0.441484 -14.618386 15.834386 -7.807631 0.826287 60.684471 2.683280 -87.390205 50.462826 -49.997082 -0.721362 -0.280565 -0.279007 0.549863 0.064345 0.094159 +9.303005 167.252426 7.293768 1.232568 34.683178 0.474910 0.197040 0.031295 0.286883 -1.105584 -0.130820 -1.724337 -0.765560 0.739267 0.068986 0.527362 0.341931 -0.025617 -1.684064 0.248492 4.421625 -2.434174 0.372566 1.769688 -0.012652 -0.569362 0.175961 0.510942 0.715045 0.182324 6.066134 3.041371 -10.214946 -1.693856 3.302436 14.209458 -4.501903 4.971045 27.795202 -0.937755 -13.256901 3.121925 4.101356 -18.195124 -6.394556 17.595268 -12.839832 -10.075691 -32.341721 -81.118774 30.098087 66.990913 -40.758858 -32.447964 -0.298262 0.020416 0.088509 0.368076 -0.379789 0.440394 -14.229906 15.612314 -7.828662 1.962926 60.533081 3.365970 -87.789757 51.222736 -51.005302 -0.722772 -0.292685 -0.264332 0.525719 0.064460 0.092659 +8.968754 167.167831 7.146215 1.381949 35.429028 0.456838 0.101620 -0.048881 -0.040603 -0.736985 -0.156048 -1.544584 -0.793290 0.752019 0.058949 0.528688 0.355558 -0.030494 -1.696548 0.294932 4.278858 -2.187216 0.360208 2.102972 -0.005214 -0.580239 0.180581 0.531575 0.727852 0.176124 5.681755 2.900441 -10.148498 -1.625783 3.125547 14.292733 -4.171819 4.772327 27.971828 -0.580064 -13.277518 2.819175 3.827273 -17.951632 -6.656736 17.428659 -12.139396 -10.612112 -33.844524 -81.430832 31.669037 65.749184 -41.053211 -31.974920 -0.320453 0.003271 0.083534 0.384848 -0.390559 0.436263 -14.394090 15.145332 -8.302116 2.260664 60.721401 3.668245 -87.505417 51.913006 -51.477657 -0.746406 -0.287915 -0.276745 0.545493 0.075031 0.088444 +8.621991 167.161285 7.049623 1.227778 35.940018 0.274685 0.277435 -0.104088 -0.343710 -0.576743 -0.170138 -1.399605 -0.782639 0.758410 0.069566 0.529441 0.360471 -0.029341 -1.543954 0.341663 4.001868 -1.694946 0.336475 2.631681 -0.005726 -0.586717 0.179225 0.534760 0.738722 0.181909 5.735066 2.737397 -10.073421 -1.626089 2.980023 14.322968 -4.132045 4.560612 28.067850 -0.313836 -13.435310 2.610354 3.639260 -17.946075 -6.464343 16.964933 -11.933111 -10.706272 -33.992123 -81.388275 31.762932 65.606773 -41.154209 -31.904236 -0.330163 0.008020 0.067724 0.394330 -0.392285 0.441809 -14.477422 15.319427 -8.529713 3.296667 61.269142 4.177522 -86.655357 52.028927 -51.133362 -0.743367 -0.296438 -0.271924 0.548627 0.070916 0.096833 +8.335776 167.162964 7.017150 1.158154 36.069458 0.093816 0.513630 -0.193180 -0.561071 -0.648085 -0.186324 -0.857826 -0.779334 0.772135 0.064984 0.526734 0.352295 -0.048018 -1.332691 0.443916 3.686069 -1.597836 0.357166 3.322105 0.001045 -0.610278 0.169021 0.533197 0.747095 0.197772 5.877307 2.649546 -9.987617 -1.680527 2.935882 14.354516 -4.257368 4.573883 28.132406 -0.442568 -13.521820 2.401300 3.808778 -18.333462 -6.183328 16.780916 -11.715172 -10.835422 -36.299534 -81.285095 33.569817 65.331917 -41.141613 -31.840427 -0.337470 0.045761 0.052242 0.401426 -0.406837 0.441739 -14.366479 15.261948 -8.724748 3.244602 61.631279 4.224452 -86.064445 52.312061 -50.930725 -0.743962 -0.319765 -0.262094 0.527535 0.082389 0.105012 +8.086520 167.129272 6.982969 1.113014 35.763039 -0.015015 0.814213 -0.252904 -0.811763 -0.882264 -0.178316 -0.323731 -0.801724 0.781831 0.061039 0.534687 0.365296 -0.038287 -1.249285 0.510152 3.380480 -1.596195 0.376963 3.619185 0.003416 -0.608723 0.170022 0.551901 0.752567 0.187476 6.077522 2.623214 -9.942127 -1.757048 2.956401 14.379050 -4.439812 4.661711 28.299021 -0.524828 -13.601445 2.232626 3.532584 -18.334280 -6.584974 16.462692 -11.155466 -11.009156 -39.048531 -81.328979 35.997299 65.407547 -41.064457 -31.893126 -0.346292 0.024123 0.053837 0.405845 -0.411118 0.439301 -14.809453 15.152475 -9.095040 4.015037 62.585377 4.619361 -84.772469 51.845974 -49.768559 -0.757174 -0.312478 -0.274791 0.550867 0.084084 0.099831 +7.869051 167.035736 6.990849 1.035165 35.784931 -0.072413 1.169224 -0.303131 -1.179914 -1.241332 -0.151096 0.144948 -0.827531 0.814158 0.063549 0.515023 0.336201 -0.048745 -1.291338 0.467849 3.380780 -1.227285 0.321366 3.479705 0.015436 -0.609704 0.169722 0.550829 0.777534 0.177506 6.103163 2.602976 -9.974830 -1.767186 2.912050 14.291284 -4.404027 4.685915 28.254179 -0.580914 -13.557173 2.167021 3.609180 -18.448467 -6.602057 16.366638 -10.872387 -11.038634 -42.523594 -81.260468 39.032402 65.375038 -41.072159 -31.990337 -0.365088 -0.004118 0.062877 0.415370 -0.429056 0.433127 -14.803628 15.112213 -9.251678 4.461949 63.274105 4.883279 -83.603905 51.586010 -48.733044 -0.769223 -0.295170 -0.303822 0.577611 0.104903 0.093386 +7.659686 167.033066 6.996001 1.019570 35.861710 -0.323491 1.378375 -0.296127 -1.050976 -1.409914 -0.137103 0.309856 -0.849876 0.825475 0.051710 0.497071 0.303940 -0.056004 -1.207573 0.404454 3.636643 -1.188517 0.290747 3.324433 0.014400 -0.585710 0.164942 0.536098 0.777194 0.168158 6.526380 2.624433 -9.908018 -1.922981 2.937468 14.376523 -4.823515 4.865574 28.263691 -0.827681 -13.281828 2.781018 4.499244 -18.501703 -7.196418 16.445639 -11.247074 -10.955324 -42.509098 -80.754425 38.650330 65.633942 -41.618572 -32.495312 -0.358345 -0.034984 0.102318 0.397519 -0.424340 0.420392 -14.914519 15.093378 -9.169952 4.819797 63.196419 5.021386 -83.927582 51.857780 -49.187798 -0.770721 -0.257144 -0.326413 0.593177 0.126563 0.080692 +7.525850 167.044418 7.033552 0.892192 36.112305 -0.709661 1.466823 -0.315579 -0.802789 -1.149170 -0.168846 0.428178 -0.862697 0.831569 0.042041 0.514791 0.319339 -0.053213 -0.961615 0.308838 4.067444 -1.298715 0.294904 3.020282 0.008734 -0.587183 0.163641 0.548243 0.778089 0.175176 6.870462 2.528930 -9.953801 -2.003535 2.856042 14.568444 -5.071709 4.837686 28.592924 -0.905478 -13.178675 2.813828 5.026232 -18.606459 -7.765009 16.548752 -10.892982 -11.240913 -44.721809 -80.758339 40.602085 65.293053 -42.058964 -32.641357 -0.355695 -0.028242 0.111601 0.393568 -0.421192 0.425443 -14.898005 14.609347 -9.376429 5.651835 63.393562 5.647392 -84.616806 52.549801 -50.345825 -0.781149 -0.258240 -0.324040 0.596174 0.127423 0.080947 +7.355191 167.028397 7.109883 1.045829 36.404373 -0.765478 1.356241 -0.303848 -0.610719 -0.870652 -0.185159 0.220932 -0.871081 0.860843 0.043275 0.501896 0.300764 -0.062406 -0.957733 0.327540 4.148426 -1.354308 0.304025 3.120034 0.019672 -0.606451 0.157234 0.547485 0.798355 0.184665 6.597807 2.458812 -10.071966 -1.989085 2.752110 14.623957 -4.922241 4.768068 28.763779 -0.914021 -13.144807 2.635721 4.778679 -18.637754 -7.378561 16.391348 -10.428543 -11.464166 -49.561325 -80.737061 44.902363 64.547562 -42.483311 -32.581692 -0.381163 -0.023364 0.098980 0.412392 -0.437929 0.419943 -14.561620 14.190603 -9.497291 6.366853 63.573101 6.401924 -85.399155 53.637516 -51.821232 -0.787840 -0.265775 -0.331001 0.596187 0.142624 0.082159 +7.155077 167.017242 7.172861 1.389389 36.439602 -0.654162 1.092596 -0.235716 -0.311941 -0.698065 -0.190512 -0.220540 -0.883363 0.865037 0.036902 0.508159 0.307619 -0.059471 -1.263333 0.380055 4.059262 -1.196603 0.290519 3.359639 0.016204 -0.607453 0.155426 0.555536 0.797220 0.186080 6.260530 2.504630 -10.129204 -2.022061 2.785383 14.680104 -4.863013 4.834050 28.861631 -0.962676 -13.147769 2.711264 4.801445 -18.622095 -7.634530 16.361652 -10.223455 -11.741094 -52.711117 -80.662842 47.482277 63.326042 -42.414639 -32.001530 -0.382022 -0.028120 0.106533 0.411631 -0.434609 0.420347 -14.466109 13.873824 -9.583220 7.144923 63.394001 7.011439 -86.213013 54.561375 -53.267361 -0.795329 -0.263296 -0.334569 0.601115 0.143887 0.079192 +7.031621 167.014420 7.198403 1.057742 36.872124 -0.849215 1.523878 -0.208912 -0.391857 -0.722919 -0.182614 -0.286065 -0.873812 0.863877 0.044145 0.496634 0.301524 -0.085036 -0.937315 0.340427 4.041193 -1.041760 0.278305 3.466509 0.027129 -0.615768 0.163659 0.552071 0.811878 0.181179 6.918967 2.404315 -10.114307 -2.097667 2.754581 14.613281 -5.223070 4.845906 28.733524 -1.109023 -13.184677 2.744221 4.970967 -18.905294 -7.277417 16.089365 -10.393722 -12.050610 -55.173679 -80.644966 49.547867 61.083500 -42.415867 -30.813631 -0.384747 -0.020208 0.091057 0.419534 -0.449088 0.427145 -14.075385 13.639119 -9.614275 7.362137 63.367119 7.293767 -85.902428 55.099770 -53.431530 -0.795216 -0.269020 -0.334109 0.601950 0.148890 0.090196 +6.869502 166.981400 7.210660 1.172682 36.980831 -0.748471 1.497608 -0.218089 -0.551707 -0.788285 -0.180495 -0.270307 -0.859250 0.865159 0.053512 0.485923 0.297021 -0.120271 -0.976377 0.337658 3.924813 -0.868291 0.261145 3.467600 0.035086 -0.630295 0.168213 0.547971 0.834601 0.183655 7.011422 2.395876 -10.147407 -2.193405 2.795569 14.540473 -5.430142 4.909186 28.631712 -1.231446 -13.098920 2.779909 5.486808 -19.247047 -6.950037 16.275200 -10.264022 -12.216107 -57.851528 -80.525887 51.688046 59.947651 -42.182903 -30.191647 -0.386563 0.000455 0.073449 0.427834 -0.464141 0.439617 -13.784278 13.369806 -9.735926 7.633672 63.621166 7.532999 -84.590286 55.149101 -52.444565 -0.792893 -0.280839 -0.329248 0.599410 0.155810 0.109428 +6.680131 167.002899 7.217666 1.187125 36.931793 -0.828285 1.584544 -0.211414 -0.574275 -0.874610 -0.168310 -0.137720 -0.853878 0.852943 0.057319 0.481894 0.305317 -0.117365 -0.924843 0.306214 3.943217 -0.710594 0.244724 3.424115 0.036048 -0.617330 0.172972 0.549581 0.834253 0.171210 6.938194 2.424942 -10.129640 -2.162041 2.830045 14.563975 -5.362299 4.945365 28.630226 -1.108801 -13.269798 2.883466 5.393882 -19.189121 -7.077047 16.167507 -10.224322 -12.440940 -58.815575 -80.563515 52.533798 58.769753 -42.223835 -29.591715 -0.386777 -0.020734 0.068889 0.427108 -0.460082 0.436339 -13.920820 13.326815 -9.742256 7.921180 63.209751 7.597058 -84.553902 55.298958 -52.618496 -0.788153 -0.267142 -0.330272 0.613667 0.152480 0.112158 +6.503870 167.006622 7.259048 1.223659 36.710667 -0.789219 1.667362 -0.248274 -0.710682 -0.994127 -0.166245 0.114754 -0.844824 0.857779 0.061901 0.484431 0.299339 -0.114939 -0.919867 0.351613 3.776792 -0.658970 0.249494 3.601349 0.038687 -0.628574 0.170801 0.545470 0.832809 0.179662 6.920116 2.451582 -10.147552 -2.190137 2.873035 14.485276 -5.432727 4.983889 28.563953 -1.250659 -13.474602 3.059166 5.110630 -19.398945 -6.588612 16.064640 -9.891124 -12.523528 -60.746830 -80.527710 54.340054 58.082737 -42.285530 -29.261112 -0.387535 0.000330 0.058164 0.431093 -0.466143 0.438853 -13.849615 13.132182 -9.793068 8.730017 63.434021 8.228467 -84.133987 55.605637 -52.583416 -0.784933 -0.285533 -0.322633 0.597733 0.148686 0.113093 +6.376717 167.041550 7.305188 1.097854 36.949028 -1.073196 1.935652 -0.254477 -0.687994 -1.066603 -0.164356 0.418212 -0.846568 0.833776 0.059838 0.499092 0.324248 -0.098737 -0.653753 0.299158 4.005669 -0.798804 0.268196 3.566319 0.028284 -0.605173 0.180354 0.553496 0.817310 0.166575 6.957397 2.375856 -10.142779 -2.110652 2.777897 14.540224 -5.311823 4.900160 28.637188 -1.358882 -13.677279 3.537927 5.161724 -19.382687 -7.172004 16.039686 -9.890258 -12.559263 -62.288631 -80.590691 55.694286 57.895103 -42.014481 -29.074713 -0.370295 -0.026997 0.073214 0.417207 -0.447181 0.441966 -14.062440 12.942348 -9.874907 9.264707 63.198250 8.559819 -84.200516 56.096909 -53.085690 -0.784523 -0.266521 -0.321773 0.613572 0.133946 0.110358 +6.286732 167.087952 7.310278 0.856923 37.076107 -1.401306 2.204793 -0.269972 -0.682690 -1.208705 -0.157978 0.722451 -0.819156 0.813195 0.075473 0.499385 0.331879 -0.106948 -0.370564 0.220591 4.209398 -0.763063 0.271545 3.486713 0.027777 -0.596422 0.191148 0.547748 0.820315 0.159305 7.602540 2.296217 -10.084869 -2.208013 2.782577 14.598593 -5.738420 4.895529 28.646461 -1.458791 -13.595873 3.768286 5.554889 -19.492493 -6.980786 15.811882 -10.120440 -12.544173 -60.683052 -80.523209 54.150425 57.557728 -42.240051 -28.906698 -0.355791 -0.021915 0.062710 0.412584 -0.444980 0.455440 -13.799865 12.832455 -9.814207 9.383290 63.073311 8.679627 -84.512550 56.422298 -53.589619 -0.770975 -0.269176 -0.312642 0.614160 0.120110 0.123627 +6.115209 167.098450 7.320713 0.915454 36.887005 -1.495124 2.163584 -0.294224 -0.655080 -1.098931 -0.164317 0.883671 -0.822154 0.822404 0.078934 0.479937 0.311945 -0.116933 -0.395738 0.198469 4.286450 -0.770784 0.266390 3.384946 0.033702 -0.591953 0.188015 0.540053 0.830461 0.152296 7.629976 2.325459 -10.029790 -2.260748 2.816364 14.666842 -5.828328 4.940321 28.679174 -1.617284 -13.597672 3.823709 5.571311 -19.589762 -6.911629 15.848895 -10.112772 -12.685377 -58.973038 -80.526443 52.560822 56.984753 -42.154224 -28.534901 -0.362758 -0.038457 0.064263 0.414368 -0.450308 0.449097 -13.486145 12.873084 -9.720198 8.992170 63.030647 8.511137 -85.463753 56.685261 -54.475582 -0.767245 -0.255791 -0.324681 0.625610 0.131663 0.124226 +5.951284 167.082748 7.312221 0.898624 36.792915 -1.566548 2.177181 -0.309065 -0.656299 -0.995318 -0.175929 0.869200 -0.821420 0.834609 0.085102 0.483429 0.312668 -0.119532 -0.231750 0.240905 4.208457 -0.952491 0.301475 3.524331 0.038061 -0.607260 0.189477 0.544582 0.842580 0.159046 7.742310 2.302027 -10.014476 -2.261708 2.819495 14.726674 -5.895653 4.955140 28.775240 -1.700639 -13.496553 3.524153 5.385921 -19.618820 -6.649409 16.105032 -9.935603 -12.813622 -59.379627 -80.614807 52.898712 56.905380 -41.867214 -28.420603 -0.372220 -0.025643 0.051789 0.426045 -0.460759 0.455521 -13.497173 12.731162 -9.910016 8.515057 63.158932 8.275264 -84.925995 56.664631 -54.020771 -0.772165 -0.271268 -0.323466 0.623341 0.130657 0.128387 +5.787125 167.104965 7.328816 1.126751 36.559666 -1.530483 1.942476 -0.329947 -0.553987 -0.672108 -0.202705 0.771892 -0.819245 0.842687 0.087930 0.482253 0.310788 -0.133697 -0.259554 0.278675 4.184200 -1.113613 0.332702 3.575195 0.047463 -0.619326 0.192033 0.546772 0.857767 0.160685 7.666715 2.351444 -10.005503 -2.330774 2.896169 14.843453 -6.022315 5.038610 28.951664 -1.752549 -13.266644 3.246964 5.749434 -19.731901 -6.518391 16.306450 -9.816788 -12.936370 -60.008442 -80.803070 53.505280 56.958443 -41.518337 -28.327360 -0.378644 -0.010050 0.038805 0.434545 -0.476493 0.459767 -13.001019 12.570029 -10.020170 7.993204 63.421856 8.054744 -84.885376 56.727764 -53.963055 -0.775347 -0.282678 -0.322482 0.621164 0.135585 0.135613 +5.713269 167.136322 7.379865 1.089275 36.820839 -1.680030 1.896983 -0.338186 -0.444317 -0.473926 -0.211391 0.864332 -0.836497 0.856064 0.084708 0.464715 0.302566 -0.150371 -0.205178 0.272041 4.247215 -0.895749 0.311699 3.761143 0.059852 -0.619337 0.194467 0.552581 0.876872 0.147437 7.720521 2.269701 -10.036958 -2.314242 2.781862 14.922002 -5.981796 4.932163 29.135073 -1.760437 -13.156147 3.171250 5.786662 -19.680607 -6.652070 16.406183 -9.372772 -13.173079 -62.759819 -80.830498 56.232899 56.567490 -42.057896 -28.402193 -0.397282 -0.035242 0.034899 0.445567 -0.490069 0.452141 -12.765620 12.238463 -10.174098 8.385249 63.879204 8.415292 -84.971672 56.765835 -54.053337 -0.785596 -0.265522 -0.340198 0.645710 0.153637 0.136120 +5.612041 167.109726 7.381964 1.057566 36.839554 -1.708119 1.992047 -0.353471 -0.576395 -0.589557 -0.214589 1.058342 -0.830550 0.836904 0.079233 0.494333 0.339559 -0.128948 -0.151834 0.284356 4.141333 -0.733491 0.300815 3.890992 0.041374 -0.610454 0.193442 0.565054 0.857366 0.155737 7.766678 2.265913 -10.021156 -2.293046 2.781116 14.873036 -5.962947 4.886598 29.127880 -1.726299 -13.386919 3.219218 5.820737 -19.718887 -7.258751 16.647438 -9.126202 -13.258051 -64.780159 -80.926186 58.244099 56.603374 -42.187405 -28.507826 -0.382001 -0.028421 0.040070 0.433274 -0.467185 0.459496 -13.030258 12.015736 -10.095535 9.413108 63.820103 8.994855 -86.126396 56.546379 -54.906349 -0.784324 -0.268824 -0.321024 0.641836 0.135699 0.138764 +5.498546 167.064697 7.439895 1.095821 36.936230 -1.626120 2.081196 -0.376115 -0.797146 -0.753682 -0.202171 1.318451 -0.830802 0.855129 0.078751 0.473904 0.316363 -0.149132 -0.096882 0.295974 4.095630 -0.600843 0.270566 3.950432 0.052518 -0.629416 0.195166 0.553035 0.873600 0.168353 7.622669 2.275712 -10.091393 -2.312842 2.739209 14.712197 -5.903061 4.789038 29.013309 -1.531460 -13.429269 3.188437 5.562817 -19.705956 -6.695267 16.943766 -9.080315 -13.126895 -66.239227 -80.963356 59.685429 56.783913 -41.970383 -28.534273 -0.405423 -0.021944 0.029246 0.452967 -0.480375 0.454158 -12.976559 12.104907 -9.672997 10.847079 63.962929 9.861280 -87.721085 55.954205 -55.755169 -0.790723 -0.271924 -0.321337 0.632243 0.152939 0.141288 +5.396627 167.072586 7.504025 1.060585 36.744377 -1.612108 2.328160 -0.316564 -0.709558 -0.951060 -0.175432 1.123986 -0.825951 0.868628 0.088873 0.462262 0.292059 -0.145241 0.095296 0.348313 4.001882 -0.871837 0.307826 4.099064 0.054479 -0.636562 0.192980 0.539283 0.877314 0.175364 7.630804 2.331413 -10.184217 -2.285271 2.759179 14.583076 -5.893759 4.797372 28.882467 -1.563660 -13.698160 3.390576 4.988390 -19.782946 -6.043611 16.978907 -9.295167 -12.923512 -67.691887 -80.955971 61.014683 56.770271 -41.682426 -28.429176 -0.413190 -0.021347 0.027558 0.460121 -0.484216 0.452626 -13.128291 12.364478 -9.378719 12.004086 63.792343 10.464619 -87.981667 55.823048 -55.968956 -0.786953 -0.277355 -0.324959 0.624839 0.154185 0.137322 +5.330537 167.055405 7.593513 1.084530 36.542492 -1.560997 2.391451 -0.276362 -0.517755 -0.900840 -0.170862 0.852253 -0.850873 0.883273 0.073986 0.460937 0.277907 -0.129016 0.102797 0.402642 3.941768 -1.012981 0.332478 4.281877 0.054240 -0.633409 0.177198 0.541782 0.864085 0.173437 7.529418 2.366551 -10.308225 -2.244161 2.731062 14.495906 -5.788133 4.816861 28.893471 -1.780086 -13.734798 3.643216 4.703999 -19.747282 -6.172123 17.010826 -9.118904 -12.845424 -70.347260 -80.890465 63.501747 56.906372 -41.477272 -28.476862 -0.414377 -0.030452 0.045398 0.452215 -0.482964 0.436135 -13.140022 12.343482 -9.428499 12.651466 64.249504 10.785138 -86.288033 55.231815 -54.155842 -0.790055 -0.271061 -0.338819 0.623980 0.163381 0.119629 +5.289005 167.037720 7.630992 1.070597 36.562958 -1.568699 2.367473 -0.243477 -0.378260 -0.757215 -0.173081 0.530254 -0.875511 0.909284 0.066754 0.455079 0.262711 -0.127630 0.183376 0.430434 3.949102 -1.107244 0.339805 4.372824 0.062129 -0.639185 0.176848 0.543574 0.875643 0.175485 7.617464 2.371757 -10.377048 -2.217575 2.688620 14.498006 -5.797486 4.825945 28.977270 -1.787121 -13.713302 3.565958 4.595257 -19.731100 -6.276907 17.116297 -8.909925 -12.919465 -73.537117 -80.882309 66.541573 56.928295 -41.421242 -28.557047 -0.433093 -0.045721 0.053374 0.462413 -0.493283 0.427257 -13.166192 12.073348 -9.508842 13.134483 64.340355 11.059110 -86.042732 55.085392 -53.870678 -0.805012 -0.261652 -0.353532 0.634293 0.178656 0.110244 +5.250557 167.058228 7.630060 1.050691 36.366405 -1.686339 2.308505 -0.219475 -0.241682 -0.665622 -0.175459 0.381430 -0.864898 0.896839 0.068571 0.454871 0.268891 -0.132367 0.196316 0.410073 4.032111 -1.123985 0.348553 4.327813 0.062662 -0.631083 0.178655 0.543306 0.873466 0.169125 7.852811 2.438426 -10.328544 -2.239943 2.779359 14.602224 -5.973296 4.897834 29.070875 -1.781101 -13.696284 3.615752 4.969555 -19.811272 -6.400131 17.020857 -8.956825 -12.976069 -73.120125 -81.007019 66.391487 56.920227 -41.878071 -28.678911 -0.424972 -0.044541 0.049154 0.456517 -0.491343 0.428979 -12.895415 11.947515 -9.503976 12.969222 64.111511 10.956419 -86.773422 55.403698 -54.676723 -0.797579 -0.259023 -0.349095 0.635405 0.175091 0.115952 +5.184128 167.075302 7.605679 0.857725 36.516743 -1.842267 2.555790 -0.277433 -0.526348 -0.772827 -0.176450 0.846080 -0.853735 0.886909 0.075604 0.456990 0.284103 -0.143938 0.607954 0.418726 4.006513 -1.348587 0.395014 4.454660 0.065181 -0.641743 0.185531 0.549451 0.880516 0.167548 8.026899 2.320533 -10.259238 -2.213379 2.703124 14.615870 -5.970800 4.802303 29.088760 -1.663761 -13.756658 3.296550 4.789773 -19.824558 -6.180539 16.798262 -8.714105 -13.031642 -73.482353 -80.841736 66.679405 57.019016 -42.485992 -28.974310 -0.427150 -0.032243 0.029398 0.465330 -0.497494 0.438275 -12.835209 11.825673 -9.514554 13.026668 64.010742 11.019248 -87.478996 55.434261 -55.282013 -0.799002 -0.272638 -0.341057 0.634503 0.169435 0.126579 +5.100438 167.104965 7.646784 0.909297 36.567875 -1.958430 2.633620 -0.287639 -0.500175 -0.774964 -0.180695 1.045633 -0.844505 0.867536 0.079648 0.466620 0.307101 -0.146916 0.729203 0.416522 4.087817 -1.360196 0.418396 4.595594 0.059764 -0.636714 0.189720 0.559686 0.877513 0.159117 7.900171 2.290816 -10.256913 -2.228443 2.700352 14.701031 -5.944954 4.787866 29.196516 -1.451353 -13.782760 3.302187 5.056968 -19.771875 -6.331472 16.759624 -8.520159 -13.153247 -73.468071 -80.593155 66.478653 56.769646 -43.214493 -29.168270 -0.414012 -0.029168 0.024672 0.459416 -0.491536 0.449283 -13.015759 11.857333 -9.551817 13.687625 63.791054 11.190667 -87.213409 55.267269 -55.100910 -0.795388 -0.276697 -0.336466 0.639808 0.156807 0.134382 +5.008088 167.129333 7.727567 0.949260 36.551426 -2.099984 2.755935 -0.211639 -0.234606 -0.858205 -0.168052 0.749324 -0.821951 0.851078 0.086562 0.470697 0.312558 -0.141774 0.853582 0.384105 4.256401 -1.569275 0.443839 4.469748 0.052056 -0.631911 0.190364 0.550966 0.866567 0.165551 7.737350 2.326644 -10.258555 -2.170702 2.735248 14.777138 -5.840622 4.827994 29.184546 -1.352467 -14.159698 3.434502 5.002151 -19.944111 -6.215186 16.190968 -8.656936 -13.161228 -71.993462 -80.493362 65.159561 56.390408 -44.036282 -29.210642 -0.402254 -0.018424 0.020585 0.452831 -0.479743 0.454033 -12.901986 12.032985 -9.377705 13.275103 62.911510 10.781097 -88.324135 55.850304 -56.473270 -0.782287 -0.282232 -0.320535 0.626352 0.144586 0.140446 +4.963192 167.153793 7.782106 1.156298 36.496826 -2.127665 2.684453 -0.202155 -0.029091 -1.015884 -0.156476 0.745028 -0.816619 0.858987 0.085898 0.466582 0.286126 -0.131894 0.685491 0.372260 4.402023 -1.554614 0.433864 4.465656 0.053300 -0.627919 0.181654 0.532659 0.857004 0.173818 7.523893 2.357582 -10.241952 -2.174749 2.750012 14.820229 -5.793070 4.891691 29.099798 -1.390217 -14.534770 3.597457 5.218561 -20.355474 -6.080217 15.678180 -8.750938 -13.203680 -70.032333 -80.191971 63.259220 55.750103 -45.160484 -29.285482 -0.394580 -0.007406 0.030446 0.442902 -0.479654 0.445604 -12.664586 12.244982 -9.192148 12.718975 62.245361 10.403840 -89.635719 56.598236 -58.100262 -0.770649 -0.283998 -0.318057 0.607676 0.146970 0.133777 +4.980425 167.159668 7.797745 1.068909 36.452381 -2.292628 2.786405 -0.194068 0.088780 -1.040707 -0.159036 0.791008 -0.794324 0.836809 0.085342 0.471809 0.296360 -0.137958 0.690796 0.308528 4.547214 -1.425836 0.417952 4.356831 0.049718 -0.629332 0.177862 0.528284 0.841884 0.177942 7.671723 2.291188 -10.284655 -2.126873 2.697577 14.807689 -5.759335 4.825286 29.017426 -1.689996 -14.738440 3.816248 5.212533 -20.664696 -5.943554 15.470534 -8.747698 -13.173607 -67.873299 -79.820023 60.973171 55.292614 -45.843788 -29.305782 -0.377227 0.020678 0.019434 0.432736 -0.474386 0.448875 -12.643470 12.525416 -9.440774 12.348681 62.323391 10.104821 -86.888382 56.897175 -56.129887 -0.756567 -0.299153 -0.297647 0.585627 0.138824 0.143061 +4.981020 167.187576 7.803658 1.036540 36.473839 -2.403700 2.869146 -0.218954 0.107048 -1.164012 -0.153588 1.022332 -0.810535 0.848083 0.079926 0.480192 0.298212 -0.130302 0.591946 0.283084 4.629778 -1.127481 0.386642 4.424829 0.050783 -0.631893 0.172184 0.539211 0.841630 0.175131 7.591506 2.166855 -10.345649 -2.116177 2.561084 14.849139 -5.657648 4.719121 29.160421 -1.722937 -14.731774 3.772313 5.259337 -20.706451 -6.118005 15.504788 -8.423912 -13.311617 -69.624321 -79.666473 62.410542 55.051956 -45.851707 -29.262722 -0.376854 0.021951 0.024918 0.430339 -0.479272 0.448059 -12.895359 12.491542 -9.791109 12.708981 62.914509 10.320333 -84.744164 56.727249 -54.365055 -0.763020 -0.303410 -0.306532 0.590598 0.139997 0.136727 +5.047082 167.175354 7.848271 0.927761 36.355148 -2.514930 2.989300 -0.208507 0.209768 -1.243284 -0.145459 1.088630 -0.813972 0.846211 0.074915 0.475472 0.287151 -0.127648 0.562768 0.228185 4.751265 -0.937316 0.346548 4.300982 0.048979 -0.621827 0.170499 0.531201 0.833410 0.173062 7.916453 2.212790 -10.395432 -2.127248 2.581004 14.778918 -5.808135 4.749259 29.043978 -1.876827 -14.680673 4.247573 5.418719 -20.692797 -6.174877 15.551222 -8.749429 -13.174081 -69.696617 -79.436378 62.229210 54.839966 -45.956326 -29.232710 -0.370016 0.013319 0.039735 0.421480 -0.473295 0.442541 -13.044841 12.520248 -9.799725 13.724273 62.795391 10.911464 -83.937027 57.317081 -54.302471 -0.759751 -0.291841 -0.310656 0.588823 0.143047 0.130337 +5.073087 167.149094 7.932034 1.019595 36.256138 -2.364868 3.020548 -0.219561 0.056040 -1.336325 -0.133799 1.291663 -0.806025 0.844771 0.078581 0.464329 0.279056 -0.143216 0.384230 0.204050 4.766475 -0.801158 0.316622 4.146415 0.055712 -0.623473 0.177572 0.522809 0.843311 0.171823 7.919977 2.294420 -10.449600 -2.192153 2.649531 14.630041 -5.946094 4.770162 28.854000 -1.825394 -14.622427 4.413842 5.640388 -20.734272 -5.948671 15.440033 -8.603888 -13.137852 -71.107758 -79.295456 63.622021 54.508213 -46.429142 -29.209726 -0.375385 0.013650 0.032447 0.427696 -0.480534 0.443050 -12.644485 12.153852 -9.721261 15.248572 62.817627 12.082417 -84.642303 58.248035 -55.663387 -0.759379 -0.288531 -0.308910 0.588657 0.149302 0.136019 +5.043498 167.106400 7.954643 1.093215 35.983459 -2.139066 3.017900 -0.250176 -0.255423 -1.383556 -0.129376 1.515809 -0.794921 0.823673 0.083695 0.471557 0.297074 -0.132545 0.314686 0.233642 4.578667 -0.858146 0.326619 4.114213 0.048409 -0.611996 0.183948 0.525512 0.833354 0.165164 7.850098 2.343861 -10.441935 -2.204339 2.701849 14.437363 -5.960052 4.738928 28.567453 -1.639070 -14.669295 4.467441 5.509173 -20.516508 -6.020821 14.951685 -8.429297 -12.996246 -70.795593 -78.828667 63.283733 54.822636 -47.833076 -29.893827 -0.366324 0.003588 0.031600 0.423024 -0.468016 0.446955 -12.526380 11.950170 -9.649835 17.124981 62.494274 13.262240 -85.263184 59.198933 -57.114037 -0.753988 -0.284215 -0.302799 0.592748 0.134574 0.137407 +5.095516 167.042786 7.984816 0.903158 35.543045 -1.939275 3.079081 -0.293003 -0.540169 -1.283830 -0.139132 1.667989 -0.795821 0.818165 0.080269 0.471831 0.294149 -0.125795 0.489588 0.330247 4.126373 -1.003137 0.351619 4.303168 0.044581 -0.608511 0.181540 0.522403 0.820994 0.165066 8.181985 2.516271 -10.479298 -2.143429 2.831703 14.074541 -6.034562 4.811388 28.102791 -1.696857 -14.713048 4.768616 5.358076 -20.452990 -5.914348 14.838585 -7.849155 -12.572924 -72.965355 -77.797638 64.954498 56.478954 -50.188789 -31.986877 -0.359510 0.002851 0.039693 0.417068 -0.461019 0.444393 -12.703396 11.240368 -9.529000 20.194355 62.019615 15.377612 -87.118935 60.853245 -60.236732 -0.751565 -0.283514 -0.303227 0.585751 0.131029 0.131054 +5.132122 166.999817 7.991653 1.022229 35.086838 -1.626138 2.948421 -0.322659 -0.831135 -1.264407 -0.140674 1.856723 -0.796688 0.810701 0.082596 0.475948 0.311898 -0.127076 0.412929 0.397859 3.872775 -1.250527 0.384538 4.270426 0.041650 -0.608461 0.189424 0.531868 0.824619 0.161722 8.220167 2.702409 -10.531656 -2.141010 3.001126 13.857776 -6.078801 4.907050 27.848139 -1.641022 -14.649521 4.750578 5.182422 -20.250347 -6.039337 14.636772 -6.951462 -12.545179 -75.166626 -76.673332 66.450600 56.915081 -52.600636 -33.442177 -0.363343 -0.009322 0.035841 0.423196 -0.456404 0.450139 -12.700704 10.473583 -9.627508 23.532307 61.605652 17.570370 -88.667953 62.650448 -63.399887 -0.758002 -0.279826 -0.302796 0.597057 0.125532 0.134841 +5.154690 167.003418 7.984470 1.036968 34.697113 -1.492106 2.995063 -0.297665 -0.923387 -1.468930 -0.119321 1.882283 -0.787942 0.789721 0.080650 0.490478 0.331958 -0.105053 0.234910 0.420462 3.689543 -1.084834 0.359384 4.282561 0.027391 -0.588176 0.189629 0.532239 0.806153 0.161732 8.268809 2.753097 -10.519224 -2.155419 3.042879 13.714745 -6.065427 4.868672 27.539133 -1.832153 -14.313983 4.804371 5.274069 -19.927355 -6.604616 14.134051 -6.738642 -12.510820 -72.773087 -75.162277 63.252644 56.797169 -55.870495 -34.973621 -0.349820 -0.020095 0.046768 0.409172 -0.434152 0.448141 -12.291365 10.540211 -9.847257 25.971272 61.472614 19.155691 -88.934135 64.794701 -65.699059 -0.749635 -0.267912 -0.291611 0.597883 0.112176 0.132933 +5.238012 167.016373 7.983655 0.978339 34.382439 -1.314850 2.958524 -0.296860 -1.043319 -1.372988 -0.126424 1.751303 -0.788802 0.779242 0.081538 0.486128 0.316137 -0.096265 0.256089 0.509649 3.326399 -1.243640 0.371080 4.495334 0.021474 -0.574345 0.195847 0.517525 0.789076 0.156921 8.456328 2.824600 -10.427766 -2.197144 3.090913 13.442000 -6.104652 4.799969 26.881725 -2.025975 -14.078970 4.973618 5.167322 -19.706944 -6.532036 13.719447 -7.396658 -12.326555 -68.442574 -73.521545 58.304405 55.976265 -59.391674 -36.169315 -0.333219 -0.034025 0.071983 0.396430 -0.422454 0.447513 -11.928431 11.437916 -9.687008 28.298519 60.954433 20.578396 -91.278008 67.431305 -70.375175 -0.746105 -0.256012 -0.298774 0.592209 0.105669 0.119822 +5.277890 167.029343 7.983756 0.734260 34.114620 -1.308561 3.067275 -0.290465 -1.089488 -1.144143 -0.142079 1.516601 -0.783965 0.766228 0.082450 0.481462 0.302668 -0.076673 0.502374 0.499101 3.231309 -1.524966 0.390596 4.300476 0.012977 -0.549226 0.192679 0.502417 0.767043 0.150275 8.639610 2.859595 -10.354753 -2.162956 3.098950 13.273678 -6.004428 4.741036 26.379974 -2.116080 -14.129115 5.023512 5.099277 -19.614777 -6.763466 13.084592 -8.266971 -12.069324 -65.687752 -71.994507 54.787903 55.585758 -62.411465 -37.480400 -0.315546 -0.055010 0.094974 0.376949 -0.404220 0.438521 -11.848722 12.670813 -9.602012 29.958427 60.440739 21.379108 -92.888710 69.645279 -74.122681 -0.731303 -0.236541 -0.302483 0.590588 0.098656 0.108570 +5.281264 167.014130 8.023033 0.908277 34.129711 -1.086763 2.783380 -0.339127 -1.196940 -0.761818 -0.176862 1.459013 -0.793272 0.768730 0.078292 0.487429 0.289737 -0.039022 0.292326 0.510687 3.113835 -1.202313 0.324853 4.215816 0.005018 -0.543315 0.190945 0.491474 0.741639 0.157884 8.235631 2.799057 -10.290317 -2.148050 2.984715 13.102726 -5.759658 4.549164 25.860296 -2.044061 -14.232334 4.869754 4.154621 -19.183256 -6.609097 12.373513 -9.045307 -12.040943 -63.317570 -70.749008 52.089851 54.330452 -65.406319 -38.066517 -0.314546 -0.066757 0.115838 0.372678 -0.390868 0.426004 -11.768380 13.679309 -9.734341 31.489487 59.440304 21.969141 -94.808510 72.765526 -79.156494 -0.732769 -0.232882 -0.304400 0.576354 0.090547 0.084381 diff --git a/visualization/Animation.py b/visualization/Animation.py new file mode 100644 index 0000000000000000000000000000000000000000..f1237fdc30a2f0800bd5404190a412936e174ed9 --- /dev/null +++ b/visualization/Animation.py @@ -0,0 +1,442 @@ +import operator + +import numpy as np +import numpy.core.umath_tests as ut + +from visualization.Quaternions import Quaternions + + +class Animation: + """ + Animation is a numpy-like wrapper for animation data + + Animation data consists of several arrays consisting + of F frames and J joints. + + The animation is specified by + + rotations : (F, J) Quaternions | Joint Rotations + positions : (F, J, 3) ndarray | Joint Positions + + The base pose is specified by + + orients : (J) Quaternions | Joint Orientations + offsets : (J, 3) ndarray | Joint Offsets + + And the skeletal structure is specified by + + parents : (J) ndarray | Joint Parents + """ + + def __init__(self, rotations, positions, orients, offsets, parents, names, frametime): + + self.rotations = rotations + self.positions = positions + self.orients = orients + self.offsets = offsets + self.parents = parents + self.names = names + self.frametime = frametime + + def __op__(self, op, other): + return Animation( + op(self.rotations, other.rotations), + op(self.positions, other.positions), + op(self.orients, other.orients), + op(self.offsets, other.offsets), + op(self.parents, other.parents)) + + def __iop__(self, op, other): + self.rotations = op(self.roations, other.rotations) + self.positions = op(self.roations, other.positions) + self.orients = op(self.orients, other.orients) + self.offsets = op(self.offsets, other.offsets) + self.parents = op(self.parents, other.parents) + return self + + def __sop__(self, op): + return Animation( + op(self.rotations), + op(self.positions), + op(self.orients), + op(self.offsets), + op(self.parents)) + + def __add__(self, other): + return self.__op__(operator.add, other) + + def __sub__(self, other): + return self.__op__(operator.sub, other) + + def __mul__(self, other): + return self.__op__(operator.mul, other) + + def __div__(self, other): + return self.__op__(operator.div, other) + + def __abs__(self): + return self.__sop__(operator.abs) + + def __neg__(self): + return self.__sop__(operator.neg) + + def __iadd__(self, other): + return self.__iop__(operator.iadd, other) + + def __isub__(self, other): + return self.__iop__(operator.isub, other) + + def __imul__(self, other): + return self.__iop__(operator.imul, other) + + def __idiv__(self, other): + return self.__iop__(operator.idiv, other) + + def __len__(self): + return len(self.rotations) + + def __getitem__(self, k): + if isinstance(k, tuple): + return Animation( + self.rotations[k], + self.positions[k], + self.orients[k[1:]], + self.offsets[k[1:]], + self.parents[k[1:]], + self.names[k[1:]], + self.frametime[k[1:]]) + else: + return Animation( + self.rotations[k], + self.positions[k], + self.orients, + self.offsets, + self.parents, + self.names, + self.frametime) + + def __setitem__(self, k, v): + if isinstance(k, tuple): + self.rotations.__setitem__(k, v.rotations) + self.positions.__setitem__(k, v.positions) + self.orients.__setitem__(k[1:], v.orients) + self.offsets.__setitem__(k[1:], v.offsets) + self.parents.__setitem__(k[1:], v.parents) + else: + self.rotations.__setitem__(k, v.rotations) + self.positions.__setitem__(k, v.positions) + self.orients.__setitem__(k, v.orients) + self.offsets.__setitem__(k, v.offsets) + self.parents.__setitem__(k, v.parents) + + @property + def shape(self): + return (self.rotations.shape[0], self.rotations.shape[1]) + + def copy(self): + return Animation( + self.rotations.copy(), self.positions.copy(), + self.orients.copy(), self.offsets.copy(), + self.parents.copy(), self.names, + self.frametime) + + def repeat(self, *args, **kw): + return Animation( + self.rotations.repeat(*args, **kw), + self.positions.repeat(*args, **kw), + self.orients, self.offsets, self.parents, self.frametime, self.names) + + def ravel(self): + return np.hstack([ + self.rotations.log().ravel(), + self.positions.ravel(), + self.orients.log().ravel(), + self.offsets.ravel()]) + + @classmethod + def unravel(cls, anim, shape, parents): + nf, nj = shape + rotations = anim[nf * nj * 0:nf * nj * 3] + positions = anim[nf * nj * 3:nf * nj * 6] + orients = anim[nf * nj * 6 + nj * 0:nf * nj * 6 + nj * 3] + offsets = anim[nf * nj * 6 + nj * 3:nf * nj * 6 + nj * 6] + return cls( + Quaternions.exp(rotations), positions, + Quaternions.exp(orients), offsets, + parents.copy()) + + +# local transformation matrices +def transforms_local(anim): + """ + Computes Animation Local Transforms + + As well as a number of other uses this can + be used to compute global joint transforms, + which in turn can be used to compete global + joint positions + + Parameters + ---------- + + anim : Animation + Input animation + + Returns + ------- + + transforms : (F, J, 4, 4) ndarray + + For each frame F, joint local + transforms for each joint J + """ + + transforms = anim.rotations.transforms() + transforms = np.concatenate([transforms, np.zeros(transforms.shape[:2] + (3, 1))], axis=-1) + transforms = np.concatenate([transforms, np.zeros(transforms.shape[:2] + (1, 4))], axis=-2) + # the last column is filled with the joint positions! + transforms[:, :, 0:3, 3] = anim.positions + transforms[:, :, 3:4, 3] = 1.0 + return transforms + + +def transforms_multiply(t0s, t1s): + """ + Transforms Multiply + + Multiplies two arrays of animation transforms + + Parameters + ---------- + + t0s, t1s : (F, J, 4, 4) ndarray + Two arrays of transforms + for each frame F and each + joint J + + Returns + ------- + + transforms : (F, J, 4, 4) ndarray + Array of transforms for each + frame F and joint J multiplied + together + """ + + return ut.matrix_multiply(t0s, t1s) + + +def transforms_inv(ts): + fts = ts.reshape(-1, 4, 4) + fts = np.array(list(map(lambda x: np.linalg.inv(x), fts))) + return fts.reshape(ts.shape) + + +def transforms_blank(anim): + """ + Blank Transforms + + Parameters + ---------- + + anim : Animation + Input animation + + Returns + ------- + + transforms : (F, J, 4, 4) ndarray + Array of identity transforms for + each frame F and joint J + """ + + ts = np.zeros(anim.shape + (4, 4)) + ts[:, :, 0, 0] = 1.0; + ts[:, :, 1, 1] = 1.0; + ts[:, :, 2, 2] = 1.0; + ts[:, :, 3, 3] = 1.0; + return ts + + +# global transformation matrices +def transforms_global(anim): + """ + Global Animation Transforms + + This relies on joint ordering + being incremental. That means a joint + J1 must not be a ancestor of J0 if + J0 appears before J1 in the joint + ordering. + + Parameters + ---------- + + anim : Animation + Input animation + + Returns + ------ + + transforms : (F, J, 4, 4) ndarray + Array of global transforms for + each frame F and joint J + """ + locals = transforms_local(anim) + globals = transforms_blank(anim) + + globals[:, 0] = locals[:, 0] + + for i in range(1, anim.shape[1]): + globals[:, i] = transforms_multiply(globals[:, anim.parents[i]], locals[:, i]) + + return globals + + +# !!! useful! +def positions_global(anim): + """ + Global Joint Positions + + Given an animation compute the global joint + positions at at every frame + + Parameters + ---------- + + anim : Animation + Input animation + + Returns + ------- + + positions : (F, J, 3) ndarray + Positions for every frame F + and joint position J + """ + + # get the last column -- corresponding to the coordinates + positions = transforms_global(anim)[:, :, :, 3] + return positions[:, :, :3] / positions[:, :, 3, np.newaxis] + + +""" Rotations """ + + +def rotations_global(anim): + """ + Global Animation Rotations + + This relies on joint ordering + being incremental. That means a joint + J1 must not be a ancestor of J0 if + J0 appears before J1 in the joint + ordering. + + Parameters + ---------- + + anim : Animation + Input animation + + Returns + ------- + + points : (F, J) Quaternions + global rotations for every frame F + and joint J + """ + + joints = np.arange(anim.shape[1]) + parents = np.arange(anim.shape[1]) + locals = anim.rotations + globals = Quaternions.id(anim.shape) + + globals[:, 0] = locals[:, 0] + + for i in range(1, anim.shape[1]): + globals[:, i] = globals[:, anim.parents[i]] * locals[:, i] + + return globals + + +def rotations_parents_global(anim): + rotations = rotations_global(anim) + rotations = rotations[:, anim.parents] + rotations[:, 0] = Quaternions.id(len(anim)) + return rotations + +""" Offsets & Orients """ + + +def orients_global(anim): + joints = np.arange(anim.shape[1]) + parents = np.arange(anim.shape[1]) + locals = anim.orients + globals = Quaternions.id(anim.shape[1]) + + globals[:, 0] = locals[:, 0] + + for i in range(1, anim.shape[1]): + globals[:, i] = globals[:, anim.parents[i]] * locals[:, i] + + return globals + + +def offsets_transforms_local(anim): + transforms = anim.orients[np.newaxis].transforms() + transforms = np.concatenate([transforms, np.zeros(transforms.shape[:2] + (3, 1))], axis=-1) + transforms = np.concatenate([transforms, np.zeros(transforms.shape[:2] + (1, 4))], axis=-2) + transforms[:, :, 0:3, 3] = anim.offsets[np.newaxis] + transforms[:, :, 3:4, 3] = 1.0 + return transforms + + +def offsets_transforms_global(anim): + joints = np.arange(anim.shape[1]) + parents = np.arange(anim.shape[1]) + locals = offsets_transforms_local(anim) + globals = transforms_blank(anim) + + globals[:, 0] = locals[:, 0] + + for i in range(1, anim.shape[1]): + globals[:, i] = transforms_multiply(globals[:, anim.parents[i]], locals[:, i]) + + return globals + + +def offsets_global(anim): + offsets = offsets_transforms_global(anim)[:, :, :, 3] + return offsets[0, :, :3] / offsets[0, :, 3, np.newaxis] + + +""" Lengths """ + + +def offset_lengths(anim): + return np.sum(anim.offsets[1:] ** 2.0, axis=1) ** 0.5 + + +def position_lengths(anim): + return np.sum(anim.positions[:, 1:] ** 2.0, axis=2) ** 0.5 + + +""" Skinning """ + + +def skin(anim, rest, weights, mesh, maxjoints=4): + full_transforms = transforms_multiply( + transforms_global(anim), + transforms_inv(transforms_global(rest[0:1]))) + + weightids = np.argsort(-weights, axis=1)[:, :maxjoints] + weightvls = np.array(list(map(lambda w, i: w[i], weights, weightids))) + weightvls = weightvls / weightvls.sum(axis=1)[..., np.newaxis] + + verts = np.hstack([mesh, np.ones((len(mesh), 1))]) + verts = verts[np.newaxis, :, np.newaxis, :, np.newaxis] + verts = transforms_multiply(full_transforms[:, weightids], verts) + verts = (verts[:, :, :, :3] / verts[:, :, :, 3:4])[:, :, :, :, 0] + + return np.sum(weightvls[np.newaxis, :, :, np.newaxis] * verts, axis=2) \ No newline at end of file diff --git a/visualization/AnimationStructure.py b/visualization/AnimationStructure.py new file mode 100644 index 0000000000000000000000000000000000000000..4f212768b856ce3c8d6f07050f8cc70cc19a4622 --- /dev/null +++ b/visualization/AnimationStructure.py @@ -0,0 +1,425 @@ +import numpy as np +# import scipy.sparse as sparse +import visualization.Animation as Animation + + +""" Family Functions """ + + +def joints(parents): + """ + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + joints : (J) ndarray + Array of joint indices + """ + return np.arange(len(parents), dtype=int) + + +def joints_list(parents): + """ + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + joints : [ndarray] + List of arrays of joint idices for + each joint + """ + return list(joints(parents)[:, np.newaxis]) + + +def parents_list(parents): + """ + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + parents : [ndarray] + List of arrays of joint idices for + the parents of each joint + """ + return list(parents[:, np.newaxis]) + + +def children_list(parents): + """ + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + children : [ndarray] + List of arrays of joint indices for + the children of each joint + """ + + def joint_children(i): + return [j for j, p in enumerate(parents) if p == i] + + return list(map(lambda j: np.array(joint_children(j)), joints(parents))) + + +def descendants_list(parents): + """ + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + descendants : [ndarray] + List of arrays of joint idices for + the descendants of each joint + """ + + children = children_list(parents) + + def joint_descendants(i): + return sum([joint_descendants(j) for j in children[i]], list(children[i])) + + return list(map(lambda j: np.array(joint_descendants(j)), joints(parents))) + + +def ancestors_list(parents): + """ + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + ancestors : [ndarray] + List of arrays of joint idices for + the ancestors of each joint + """ + + decendants = descendants_list(parents) + + def joint_ancestors(i): + return [j for j in joints(parents) if i in decendants[j]] + + return list(map(lambda j: np.array(joint_ancestors(j)), joints(parents))) + + +""" Mask Functions """ + + +def mask(parents, filter): + """ + Constructs a Mask for a give filter + + A mask is a (J, J) ndarray truth table for a given + condition over J joints. For example there + may be a mask specifying if a joint N is a + child of another joint M. + + This could be constructed into a mask using + `m = mask(parents, children_list)` and the condition + of childhood tested using `m[N, M]`. + + Parameters + ---------- + + parents : (J) ndarray + parents array + + filter : (J) ndarray -> [ndarray] + function that outputs a list of arrays + of joint indices for some condition + + Returns + ------- + + mask : (N, N) ndarray + boolean truth table of given condition + """ + m = np.zeros((len(parents), len(parents))).astype(bool) + jnts = joints(parents) + fltr = filter(parents) + for i, f in enumerate(fltr): m[i, :] = np.any(jnts[:, np.newaxis] == f[np.newaxis, :], axis=1) + return m + + +def joints_mask(parents): return np.eye(len(parents)).astype(bool) + + +def children_mask(parents): return mask(parents, children_list) + + +def parents_mask(parents): return mask(parents, parents_list) + + +def descendants_mask(parents): return mask(parents, descendants_list) + + +def ancestors_mask(parents): return mask(parents, ancestors_list) + + +""" Search Functions """ + + +def joint_chain_ascend(parents, start, end): + chain = [] + while start != end: + chain.append(start) + start = parents[start] + chain.append(end) + return np.array(chain, dtype=int) + + +""" Constraints """ + + +def constraints(anim, **kwargs): + """ + Constraint list for Animation + + This constraint list can be used in the + VerletParticle solver to constrain + a animation global joint positions. + + Parameters + ---------- + + anim : Animation + Input animation + + masses : (F, J) ndarray + Optional list of masses + for joints J across frames F + defaults to weighting by + vertical height + + Returns + ------- + + constraints : [(int, int, (F, J) ndarray, (F, J) ndarray, (F, J) ndarray)] + A list of constraints in the format: + (Joint1, Joint2, Masses1, Masses2, Lengths) + + """ + + masses = kwargs.pop('masses', None) + + children = children_list(anim.parents) + constraints = [] + + points_offsets = Animation.offsets_global(anim) + points = Animation.positions_global(anim) + + if masses is None: + masses = 1.0 / (0.1 + np.absolute(points_offsets[:, 1])) + masses = masses[np.newaxis].repeat(len(anim), axis=0) + + for j in range(anim.shape[1]): + + """ Add constraints between all joints and their children """ + for c0 in children[j]: + + dists = np.sum((points[:, c0] - points[:, j]) ** 2.0, axis=1) ** 0.5 + constraints.append((c0, j, masses[:, c0], masses[:, j], dists)) + + """ Add constraints between all children of joint """ + for c1 in children[j]: + if c0 == c1: continue + + dists = np.sum((points[:, c0] - points[:, c1]) ** 2.0, axis=1) ** 0.5 + constraints.append((c0, c1, masses[:, c0], masses[:, c1], dists)) + + return constraints + + +""" Graph Functions """ + + +def graph(anim): + """ + Generates a weighted adjacency matrix + using local joint distances along + the skeletal structure. + + Joints which are not connected + are assigned the weight `0`. + + Joints which actually have zero distance + between them, but are still connected, are + perturbed by some minimal amount. + + The output of this routine can be used + with the `scipy.sparse.csgraph` + routines for graph analysis. + + Parameters + ---------- + + anim : Animation + input animation + + Returns + ------- + + graph : (N, N) ndarray + weight adjacency matrix using + local distances along the + skeletal structure from joint + N to joint M. If joints are not + directly connected are assigned + the weight `0`. + """ + + graph = np.zeros(anim.shape[1], anim.shape[1]) + lengths = np.sum(anim.offsets ** 2.0, axis=1) ** 0.5 + 0.001 + + for i, p in enumerate(anim.parents): + if p == -1: continue + graph[i, p] = lengths[p] + graph[p, i] = lengths[p] + + return graph + + +def distances(anim): + """ + Generates a distance matrix for + pairwise joint distances along + the skeletal structure + + Parameters + ---------- + + anim : Animation + input animation + + Returns + ------- + + distances : (N, N) ndarray + array of pairwise distances + along skeletal structure + from some joint N to some + joint M + """ + + distances = np.zeros((anim.shape[1], anim.shape[1])) + generated = distances.copy().astype(bool) + + joint_lengths = np.sum(anim.offsets ** 2.0, axis=1) ** 0.5 + joint_children = children_list(anim) + joint_parents = parents_list(anim) + + def find_distance(distances, generated, prev, i, j): + + """ If root, identity, or already generated, return """ + if j == -1: return (0.0, True) + if j == i: return (0.0, True) + if generated[i, j]: return (distances[i, j], True) + + """ Find best distances along parents and children """ + par_dists = [(joint_lengths[j], find_distance(distances, generated, j, i, p)) for p in joint_parents[j] if + p != prev] + out_dists = [(joint_lengths[c], find_distance(distances, generated, j, i, c)) for c in joint_children[j] if + c != prev] + + """ Check valid distance and not dead end """ + par_dists = [a + d for (a, (d, f)) in par_dists if f] + out_dists = [a + d for (a, (d, f)) in out_dists if f] + + """ All dead ends """ + if (out_dists + par_dists) == []: return (0.0, False) + + """ Get minimum path """ + dist = min(out_dists + par_dists) + distances[i, j] = dist; + distances[j, i] = dist + generated[i, j] = True; + generated[j, i] = True + + for i in range(anim.shape[1]): + for j in range(anim.shape[1]): + find_distance(distances, generated, -1, i, j) + + return distances + + +def edges(parents): + """ + Animation structure edges + + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + edges : (M, 2) ndarray + array of pairs where each + pair contains two indices of a joints + which corrisponds to an edge in the + joint structure going from parent to child. + """ + + return np.array(list(zip(parents, joints(parents)))[1:]) + + +def incidence(parents): + """ + Incidence Matrix + + Parameters + ---------- + + parents : (J) ndarray + parents array + + Returns + ------- + + incidence : (N, M) ndarray + + Matrix of N joint positions by + M edges which each entry is either + 1 or -1 and multiplication by the + joint positions returns the an + array of vectors along each edge + of the structure + """ + + es = edges(parents) + + inc = np.zeros((len(parents) - 1, len(parents))).astype(np.int) + for i, e in enumerate(es): + inc[i, e[0]] = 1 + inc[i, e[1]] = -1 + + return inc.T diff --git a/visualization/BVH.py b/visualization/BVH.py new file mode 100644 index 0000000000000000000000000000000000000000..c956ff15edf18523fd381e4fe4b8dc569d8e729a --- /dev/null +++ b/visualization/BVH.py @@ -0,0 +1,273 @@ +import re +import numpy as np +from common.quaternion import * +from visualization.Animation import Animation + +channelmap = { + 'Xrotation': 'x', + 'Yrotation': 'y', + 'Zrotation': 'z' +} + +channelmap_inv = { + 'x': 'Xrotation', + 'y': 'Yrotation', + 'z': 'Zrotation', +} + +ordermap = { + 'x': 0, + 'y': 1, + 'z': 2, +} + +def load(filename, start=None, end=None, world=False, need_quater=True): + """ + Reads a BVH file and constructs an animation + Parameters + ---------- + filename: str + File to be opened + start : int + Optional Starting Frame + end : int + Optional Ending Frame + order : str + Optional Specifier for joint order. + Given as string E.G 'xyz', 'zxy' + world : bool + If set to true euler angles are applied + together in world space rather than local + space + Returns + ------- + (animation, joint_names, frametime) + Tuple of loaded animation and joint names + """ + + f = open(filename, "r") + + i = 0 + active = -1 + end_site = False + + names = [] + orients = Quaterions.id(0) + offsets = np.array([]).reshape((0, 3)) + parents = np.array([], dtype=int) + orders = [] + + for line in f: + + if "HIERARCHY" in line: continue + if "MOTION" in line: continue + + # """ Modified line read to handle mixamo data """ + rmatch = re.match(r"ROOT (\w+)", line) + # rmatch = re.match(r"ROOT (\w+:?\w+)", line) + if rmatch: + names.append(rmatch.group(1)) + offsets = np.append(offsets, np.array([[0, 0, 0]]), axis=0) + orients = np.append(orients, np.array([[1, 0, 0, 0]]), axis=0) + parents = np.append(parents, active) + active = (len(parents) - 1) + continue + + if "{" in line: continue + + if "}" in line: + if end_site: + end_site = False + else: + active = parents[active] + continue + + offmatch = re.match(r"\s*OFFSET\s+([\-\d\.e]+)\s+([\-\d\.e]+)\s+([\-\d\.e]+)", line) + if offmatch: + if not end_site: + offsets[active] = np.array([list(map(float, offmatch.groups()))]) + continue + + chanmatch = re.match(r"\s*CHANNELS\s+(\d+)", line) + if chanmatch: + channels = int(chanmatch.group(1)) + + channelis = 0 if channels == 3 else 3 + channelie = 3 if channels == 3 else 6 + parts = line.split()[2 + channelis:2 + channelie] + if any([p not in channelmap for p in parts]): + continue + order = "".join([channelmap[p] for p in parts]) + orders.append(order) + continue + + # """ Modified line read to handle mixamo data """ + jmatch = re.match("\s*JOINT\s+(\w+)", line) + # jmatch = re.match("\s*JOINT\s+(\w+:?\w+)", line) + if jmatch: + names.append(jmatch.group(1)) + offsets = np.append(offsets, np.array([[0, 0, 0]]), axis=0) + orients = np.append(orients, np.array([[1, 0, 0, 0]]), axis=0) + parents = np.append(parents, active) + active = (len(parents) - 1) + continue + + if "End Site" in line: + end_site = True + continue + + fmatch = re.match("\s*Frames:\s+(\d+)", line) + if fmatch: + if start and end: + fnum = (end - start) - 1 + else: + fnum = int(fmatch.group(1)) + jnum = len(parents) + positions = offsets[np.newaxis].repeat(fnum, axis=0) + rotations = np.zeros((fnum, len(orients), 3)) + continue + + fmatch = re.match("\s*Frame Time:\s+([\d\.]+)", line) + if fmatch: + frametime = float(fmatch.group(1)) + continue + + if (start and end) and (i < start or i >= end - 1): + i += 1 + continue + + # dmatch = line.strip().split(' ') + dmatch = line.strip().split() + if dmatch: + data_block = np.array(list(map(float, dmatch))) + N = len(parents) + fi = i - start if start else i + if channels == 3: + positions[fi, 0:1] = data_block[0:3] + rotations[fi, :] = data_block[3:].reshape(N, 3) + elif channels == 6: + data_block = data_block.reshape(N, 6) + positions[fi, :] = data_block[:, 0:3] + rotations[fi, :] = data_block[:, 3:6] + elif channels == 9: + positions[fi, 0] = data_block[0:3] + data_block = data_block[3:].reshape(N - 1, 9) + rotations[fi, 1:] = data_block[:, 3:6] + positions[fi, 1:] += data_block[:, 0:3] * data_block[:, 6:9] + else: + raise Exception("Too many channels! %i" % channels) + + i += 1 + + f.close() + + all_rotations = [] + canonical_order = 'xyz' + for i, order in enumerate(orders): + rot = rotations[:, i:i + 1] + if need_quater: + quat = euler_to_quat_np(np.radians(rot), order=order, world=world) + all_rotations.append(quat) + continue + elif order != canonical_order: + quat = euler_to_quat_np(np.radians(rot), order=order, world=world) + rot = np.degrees(qeuler_np(quat, order=canonical_order)) + all_rotations.append(rot) + rotations = np.concatenate(all_rotations, axis=1) + + return Animation(rotations, positions, orients, offsets, parents, names, frametime) + +def write_bvh(parent, offset, rotation, rot_position, names, frametime, order, path, endsite=None): + file = open(path, 'w') + frame = rotation.shape[0] + assert rotation.shape[-1] == 3 + joint_num = rotation.shape[1] + order = order.upper() + + file_string = 'HIERARCHY\n' + + seq = [] + + def write_static(idx, prefix): + nonlocal parent, offset, rotation, names, order, endsite, file_string, seq + seq.append(idx) + if idx == 0: + name_label = 'ROOT ' + names[idx] + channel_label = 'CHANNELS 6 Xposition Yposition Zposition {}rotation {}rotation {}rotation'.format( + *order) + else: + name_label = 'JOINT ' + names[idx] + channel_label = 'CHANNELS 3 {}rotation {}rotation {}rotation'.format(*order) + offset_label = 'OFFSET %.6f %.6f %.6f' % (offset[idx][0], offset[idx][1], offset[idx][2]) + + file_string += prefix + name_label + '\n' + file_string += prefix + '{\n' + file_string += prefix + '\t' + offset_label + '\n' + file_string += prefix + '\t' + channel_label + '\n' + + has_child = False + for y in range(idx + 1, rotation.shape[1]): + if parent[y] == idx: + has_child = True + write_static(y, prefix + '\t') + if not has_child: + file_string += prefix + '\t' + 'End Site\n' + file_string += prefix + '\t' + '{\n' + file_string += prefix + '\t\t' + 'OFFSET 0 0 0\n' + file_string += prefix + '\t' + '}\n' + + file_string += prefix + '}\n' + + write_static(0, '') + + file_string += 'MOTION\n' + 'Frames: {}\n'.format(frame) + 'Frame Time: %.8f\n' % frametime + for i in range(frame): + file_string += '%.6f %.6f %.6f ' % (rot_position[i][0], rot_position[i][1], + rot_position[i][2]) + for j in range(joint_num): + idx = seq[j] + file_string += '%.6f %.6f %.6f ' % (rotation[i][idx][0], rotation[i][idx][1], rotation[i][idx][2]) + file_string += '\n' + + file.write(file_string) + return file_string + +class WriterWrapper: + def __init__(self, parents, frametime, offset=None, names=None): + self.parents = parents + self.offset = offset + self.frametime = frametime + self.names = names + + def write(self, filename, rot, r_pos, order, offset=None, names=None, repr='quat'): + """ + Write animation to bvh file + :param filename: + :param rot: Quaternion as (w, x, y, z) + :param pos: + :param offset: + :return: + """ + if repr not in ['euler', 'quat', 'quaternion', 'cont6d']: + raise Exception('Unknown rotation representation') + if offset is None: + offset = self.offset + if not isinstance(offset, torch.Tensor): + offset = torch.tensor(offset) + n_bone = offset.shape[0] + + if repr == 'cont6d': + rot = rot.reshape(rot.shape[0], -1, 6) + rot = cont6d_to_quat_np(rot) + if repr == 'cont6d' or repr == 'quat' or repr == 'quaternion': +# rot = rot.reshape(rot.shape[0], -1, 4) +# rot /= rot.norm(dim=-1, keepdim=True) ** 0.5 + euler = qeuler_np(rot, order=order) + rot = euler + + if names is None: + if self.names is None: + names = ['%02d' % i for i in range(n_bone)] + else: + names = self.names + write_bvh(self.parents, offset, rot, r_pos, names, self.frametime, order, filename) \ No newline at end of file diff --git a/visualization/BVH_mod.py b/visualization/BVH_mod.py new file mode 100644 index 0000000000000000000000000000000000000000..1eee63c35cac3d8e3ff985ae080d980c95432539 --- /dev/null +++ b/visualization/BVH_mod.py @@ -0,0 +1,304 @@ +import re +import numpy as np + +from visualization.Animation import Animation +from visualization.Quaternions import Quaternions + +channelmap = { + 'Xrotation': 'x', + 'Yrotation': 'y', + 'Zrotation': 'z' +} + +channelmap_inv = { + 'x': 'Xrotation', + 'y': 'Yrotation', + 'z': 'Zrotation', +} + +ordermap = { + 'x': 0, + 'y': 1, + 'z': 2, +} + + +def load(filename, start=None, end=None, order=None, world=False, need_quater=True): + """ + Reads a BVH file and constructs an animation + + Parameters + ---------- + filename: str + File to be opened + + start : int + Optional Starting Frame + + end : int + Optional Ending Frame + + order : str + Optional Specifier for joint order. + Given as string E.G 'xyz', 'zxy' + + world : bool + If set to true euler angles are applied + together in world space rather than local + space + + Returns + ------- + + (animation, joint_names, frametime) + Tuple of loaded animation and joint names + """ + + f = open(filename, "r") + + i = 0 + active = -1 + end_site = False + + names = [] + orients = Quaternions.id(0) + offsets = np.array([]).reshape((0, 3)) + parents = np.array([], dtype=int) + + for line in f: + + if "HIERARCHY" in line: continue + if "MOTION" in line: continue + + """ Modified line read to handle mixamo data """ + # rmatch = re.match(r"ROOT (\w+)", line) + rmatch = re.match(r"ROOT (\w+:?\w+)", line) + if rmatch: + names.append(rmatch.group(1)) + offsets = np.append(offsets, np.array([[0, 0, 0]]), axis=0) + orients.qs = np.append(orients.qs, np.array([[1, 0, 0, 0]]), axis=0) + parents = np.append(parents, active) + active = (len(parents) - 1) + continue + + if "{" in line: continue + + if "}" in line: + if end_site: + end_site = False + else: + active = parents[active] + continue + + offmatch = re.match(r"\s*OFFSET\s+([\-\d\.e]+)\s+([\-\d\.e]+)\s+([\-\d\.e]+)", line) + if offmatch: + if not end_site: + offsets[active] = np.array([list(map(float, offmatch.groups()))]) + continue + + chanmatch = re.match(r"\s*CHANNELS\s+(\d+)", line) + if chanmatch: + channels = int(chanmatch.group(1)) + if order is None: + channelis = 0 if channels == 3 else 3 + channelie = 3 if channels == 3 else 6 + parts = line.split()[2 + channelis:2 + channelie] + if any([p not in channelmap for p in parts]): + continue + order = "".join([channelmap[p] for p in parts]) + continue + + """ Modified line read to handle mixamo data """ + # jmatch = re.match("\s*JOINT\s+(\w+)", line) + jmatch = re.match("\s*JOINT\s+(\w+:?\w+)", line) + if jmatch: + names.append(jmatch.group(1)) + offsets = np.append(offsets, np.array([[0, 0, 0]]), axis=0) + orients.qs = np.append(orients.qs, np.array([[1, 0, 0, 0]]), axis=0) + parents = np.append(parents, active) + active = (len(parents) - 1) + continue + + if "End Site" in line: + end_site = True + continue + + fmatch = re.match("\s*Frames:\s+(\d+)", line) + if fmatch: + if start and end: + fnum = (end - start) - 1 + else: + fnum = int(fmatch.group(1)) + jnum = len(parents) + positions = offsets[np.newaxis].repeat(fnum, axis=0) + rotations = np.zeros((fnum, len(orients), 3)) + continue + + fmatch = re.match("\s*Frame Time:\s+([\d\.]+)", line) + if fmatch: + frametime = float(fmatch.group(1)) + continue + + if (start and end) and (i < start or i >= end - 1): + i += 1 + continue + + # dmatch = line.strip().split(' ') + dmatch = line.strip().split() + if dmatch: + data_block = np.array(list(map(float, dmatch))) + N = len(parents) + fi = i - start if start else i + if channels == 3: + positions[fi, 0:1] = data_block[0:3] + rotations[fi, :] = data_block[3:].reshape(N, 3) + elif channels == 6: + data_block = data_block.reshape(N, 6) + positions[fi, :] = data_block[:, 0:3] + rotations[fi, :] = data_block[:, 3:6] + elif channels == 9: + positions[fi, 0] = data_block[0:3] + data_block = data_block[3:].reshape(N - 1, 9) + rotations[fi, 1:] = data_block[:, 3:6] + positions[fi, 1:] += data_block[:, 0:3] * data_block[:, 6:9] + else: + raise Exception("Too many channels! %i" % channels) + + i += 1 + + f.close() + + if need_quater: + rotations = Quaternions.from_euler(np.radians(rotations), order=order, world=world) + elif order != 'xyz': + rotations = Quaternions.from_euler(np.radians(rotations), order=order, world=world) + rotations = np.degrees(rotations.euler()) + + return Animation(rotations, positions, orients, offsets, parents, names, frametime) + + +def save(filename, anim, names=None, frametime=1.0 / 24.0, order='zyx', positions=False, mask=None, quater=False): + """ + Saves an Animation to file as BVH + + Parameters + ---------- + filename: str + File to be saved to + + anim : Animation + Animation to save + + names : [str] + List of joint names + + order : str + Optional Specifier for joint order. + Given as string E.G 'xyz', 'zxy' + + frametime : float + Optional Animation Frame time + + positions : bool + Optional specfier to save bone + positions for each frame + + orients : bool + Multiply joint orients to the rotations + before saving. + + """ + + if names is None: + names = ["joint_" + str(i) for i in range(len(anim.parents))] + + with open(filename, 'w') as f: + + t = "" + f.write("%sHIERARCHY\n" % t) + f.write("%sROOT %s\n" % (t, names[0])) + f.write("%s{\n" % t) + t += '\t' + + f.write("%sOFFSET %f %f %f\n" % (t, anim.offsets[0, 0], anim.offsets[0, 1], anim.offsets[0, 2])) + f.write("%sCHANNELS 6 Xposition Yposition Zposition %s %s %s \n" % + (t, channelmap_inv[order[0]], channelmap_inv[order[1]], channelmap_inv[order[2]])) + + for i in range(anim.shape[1]): + if anim.parents[i] == 0: + t = save_joint(f, anim, names, t, i, order=order, positions=positions) + + t = t[:-1] + f.write("%s}\n" % t) + + f.write("MOTION\n") + f.write("Frames: %i\n" % anim.shape[0]); + f.write("Frame Time: %f\n" % frametime); + + # if orients: + # rots = np.degrees((-anim.orients[np.newaxis] * anim.rotations).euler(order=order[::-1])) + # else: + # rots = np.degrees(anim.rotations.euler(order=order[::-1])) + # rots = np.degrees(anim.rotations.euler(order=order[::-1])) + if quater: + rots = np.degrees(anim.rotations.euler(order=order[::-1])) + else: + rots = anim.rotations + poss = anim.positions + + for i in range(anim.shape[0]): + for j in range(anim.shape[1]): + + if positions or j == 0: + + f.write("%f %f %f %f %f %f " % ( + poss[i, j, 0], poss[i, j, 1], poss[i, j, 2], + rots[i, j, ordermap[order[0]]], rots[i, j, ordermap[order[1]]], rots[i, j, ordermap[order[2]]])) + + else: + if mask == None or mask[j] == 1: + f.write("%f %f %f " % ( + rots[i, j, ordermap[order[0]]], rots[i, j, ordermap[order[1]]], + rots[i, j, ordermap[order[2]]])) + else: + f.write("%f %f %f " % (0, 0, 0)) + + f.write("\n") + + +def save_joint(f, anim, names, t, i, order='zyx', positions=False): + f.write("%sJOINT %s\n" % (t, names[i])) + f.write("%s{\n" % t) + t += '\t' + + f.write("%sOFFSET %f %f %f\n" % (t, anim.offsets[i, 0], anim.offsets[i, 1], anim.offsets[i, 2])) + + if positions: + f.write("%sCHANNELS 6 Xposition Yposition Zposition %s %s %s \n" % (t, + channelmap_inv[order[0]], + channelmap_inv[order[1]], + channelmap_inv[order[2]])) + else: + f.write("%sCHANNELS 3 %s %s %s\n" % (t, + channelmap_inv[order[0]], channelmap_inv[order[1]], + channelmap_inv[order[2]])) + + end_site = True + + for j in range(anim.shape[1]): + if anim.parents[j] == i: + t = save_joint(f, anim, names, t, j, order=order, positions=positions) + end_site = False + + if end_site: + f.write("%sEnd Site\n" % t) + f.write("%s{\n" % t) + t += '\t' + f.write("%sOFFSET %f %f %f\n" % (t, 0.0, 0.0, 0.0)) + t = t[:-1] + f.write("%s}\n" % t) + + t = t[:-1] + f.write("%s}\n" % t) + + return t \ No newline at end of file diff --git a/visualization/InverseKinematics.py b/visualization/InverseKinematics.py new file mode 100644 index 0000000000000000000000000000000000000000..dbb4d5598cc63f5f8a05d3695d6ef8ec40a1af56 --- /dev/null +++ b/visualization/InverseKinematics.py @@ -0,0 +1,633 @@ +import numpy as np +import scipy.linalg as linalg + +from visualization import Animation +from visualization import AnimationStructure + +from visualization.Quaternions import Quaternions + + +class BasicInverseKinematics: + """ + Basic Inverse Kinematics Solver + + This is an extremely simple full body IK + solver. + + It works given the following conditions: + + * All joint targets must be specified + * All joint targets must be in reach + * All joint targets must not differ + extremely from the starting pose + * No bone length constraints can be violated + * The root translation and rotation are + set to good initial values + + It works under the observation that if the + _directions_ the joints are pointing toward + match the _directions_ of the vectors between + the target joints then the pose should match + that of the target pose. + + Therefore it iterates over joints rotating + each joint such that the vectors between it + and it's children match that of the target + positions. + + Parameters + ---------- + + animation : Animation + animation input + + positions : (F, J, 3) ndarray + target positions for each frame F + and each joint J + + iterations : int + Optional number of iterations. + If the above conditions are met + 1 iteration should be enough, + therefore the default is 1 + + silent : bool + Optional if to suppress output + defaults to False + """ + + def __init__(self, animation, positions, iterations=1, silent=True): + + self.animation = animation + self.positions = positions + self.iterations = iterations + self.silent = silent + + def __call__(self): + + children = AnimationStructure.children_list(self.animation.parents) + + for i in range(self.iterations): + + for j in AnimationStructure.joints(self.animation.parents): + + c = np.array(children[j]) + if len(c) == 0: continue + + anim_transforms = Animation.transforms_global(self.animation) + anim_positions = anim_transforms[:, :, :3, 3] + anim_rotations = Quaternions.from_transforms(anim_transforms) + + jdirs = anim_positions[:, c] - anim_positions[:, np.newaxis, j] + ddirs = self.positions[:, c] - anim_positions[:, np.newaxis, j] + + jsums = np.sqrt(np.sum(jdirs ** 2.0, axis=-1)) + 1e-10 + dsums = np.sqrt(np.sum(ddirs ** 2.0, axis=-1)) + 1e-10 + + jdirs = jdirs / jsums[:, :, np.newaxis] + ddirs = ddirs / dsums[:, :, np.newaxis] + + angles = np.arccos(np.sum(jdirs * ddirs, axis=2).clip(-1, 1)) + axises = np.cross(jdirs, ddirs) + axises = -anim_rotations[:, j, np.newaxis] * axises + + rotations = Quaternions.from_angle_axis(angles, axises) + + if rotations.shape[1] == 1: + averages = rotations[:, 0] + else: + averages = Quaternions.exp(rotations.log().mean(axis=-2)) + + self.animation.rotations[:, j] = self.animation.rotations[:, j] * averages + + if not self.silent: + anim_positions = Animation.positions_global(self.animation) + error = np.mean(np.sum((anim_positions - self.positions) ** 2.0, axis=-1) ** 0.5) + print('[BasicInverseKinematics] Iteration %i Error: %f' % (i + 1, error)) + + return self.animation + + +class JacobianInverseKinematics: + """ + Jacobian Based Full Body IK Solver + + This is a full body IK solver which + uses the dampened least squares inverse + jacobian method. + + It should remain fairly stable and effective + even for joint positions which are out of + reach and it can also take any number of targets + to treat as end effectors. + + Parameters + ---------- + + animation : Animation + animation to solve inverse problem on + + targets : {int : (F, 3) ndarray} + Dictionary of target positions for each + frame F, mapping joint index to + a target position + + references : (F, 3) + Optional list of J joint position + references for which the result + should bias toward + + iterations : int + Optional number of iterations to + compute. More iterations results in + better accuracy but takes longer to + compute. Default is 10. + + recalculate : bool + Optional if to recalcuate jacobian + each iteration. Gives better accuracy + but slower to compute. Defaults to True + + damping : float + Optional damping constant. Higher + damping increases stability but + requires more iterations to converge. + Defaults to 5.0 + + secondary : float + Force, or bias toward secondary target. + Defaults to 0.25 + + silent : bool + Optional if to suppress output + defaults to False + """ + + def __init__(self, animation, targets, + references=None, iterations=10, + recalculate=True, damping=2.0, + secondary=0.25, translate=False, + silent=False, weights=None, + weights_translate=None): + + self.animation = animation + self.targets = targets + self.references = references + + self.iterations = iterations + self.recalculate = recalculate + self.damping = damping + self.secondary = secondary + self.translate = translate + self.silent = silent + self.weights = weights + self.weights_translate = weights_translate + + def cross(self, a, b): + o = np.empty(b.shape) + o[..., 0] = a[..., 1] * b[..., 2] - a[..., 2] * b[..., 1] + o[..., 1] = a[..., 2] * b[..., 0] - a[..., 0] * b[..., 2] + o[..., 2] = a[..., 0] * b[..., 1] - a[..., 1] * b[..., 0] + return o + + def jacobian(self, x, fp, fr, ts, dsc, tdsc): + + """ Find parent rotations """ + prs = fr[:, self.animation.parents] + prs[:, 0] = Quaternions.id((1)) + + """ Find global positions of target joints """ + tps = fp[:, np.array(list(ts.keys()))] + + """ Get partial rotations """ + qys = Quaternions.from_angle_axis(x[:, 1:prs.shape[1] * 3:3], np.array([[[0, 1, 0]]])) + qzs = Quaternions.from_angle_axis(x[:, 2:prs.shape[1] * 3:3], np.array([[[0, 0, 1]]])) + + """ Find axis of rotations """ + es = np.empty((len(x), fr.shape[1] * 3, 3)) + es[:, 0::3] = ((prs * qzs) * qys) * np.array([[[1, 0, 0]]]) + es[:, 1::3] = ((prs * qzs) * np.array([[[0, 1, 0]]])) + es[:, 2::3] = ((prs * np.array([[[0, 0, 1]]]))) + + """ Construct Jacobian """ + j = fp.repeat(3, axis=1) + j = dsc[np.newaxis, :, :, np.newaxis] * (tps[:, np.newaxis, :] - j[:, :, np.newaxis]) + j = self.cross(es[:, :, np.newaxis, :], j) + j = np.swapaxes(j.reshape((len(x), fr.shape[1] * 3, len(ts) * 3)), 1, 2) + + if self.translate: + es = np.empty((len(x), fr.shape[1] * 3, 3)) + es[:, 0::3] = prs * np.array([[[1, 0, 0]]]) + es[:, 1::3] = prs * np.array([[[0, 1, 0]]]) + es[:, 2::3] = prs * np.array([[[0, 0, 1]]]) + + jt = tdsc[np.newaxis, :, :, np.newaxis] * es[:, :, np.newaxis, :].repeat(tps.shape[1], axis=2) + jt = np.swapaxes(jt.reshape((len(x), fr.shape[1] * 3, len(ts) * 3)), 1, 2) + + j = np.concatenate([j, jt], axis=-1) + + return j + + # @profile(immediate=True) + def __call__(self, descendants=None, gamma=1.0): + + self.descendants = descendants + + """ Calculate Masses """ + if self.weights is None: + self.weights = np.ones(self.animation.shape[1]) + + if self.weights_translate is None: + self.weights_translate = np.ones(self.animation.shape[1]) + + """ Calculate Descendants """ + if self.descendants is None: + self.descendants = AnimationStructure.descendants_mask(self.animation.parents) + + self.tdescendants = np.eye(self.animation.shape[1]) + self.descendants + + self.first_descendants = self.descendants[:, np.array(list(self.targets.keys()))].repeat(3, axis=0).astype(int) + self.first_tdescendants = self.tdescendants[:, np.array(list(self.targets.keys()))].repeat(3, axis=0).astype( + int) + + """ Calculate End Effectors """ + self.endeff = np.array(list(self.targets.values())) + self.endeff = np.swapaxes(self.endeff, 0, 1) + + if not self.references is None: + self.second_descendants = self.descendants.repeat(3, axis=0).astype(int) + self.second_tdescendants = self.tdescendants.repeat(3, axis=0).astype(int) + self.second_targets = dict([(i, self.references[:, i]) for i in range(self.references.shape[1])]) + + nf = len(self.animation) + nj = self.animation.shape[1] + + if not self.silent: + gp = Animation.positions_global(self.animation) + gp = gp[:, np.array(list(self.targets.keys()))] + error = np.mean(np.sqrt(np.sum((self.endeff - gp) ** 2.0, axis=2))) + print('[JacobianInverseKinematics] Start | Error: %f' % error) + + for i in range(self.iterations): + + """ Get Global Rotations & Positions """ + gt = Animation.transforms_global(self.animation) + gp = gt[:, :, :, 3] + gp = gp[:, :, :3] / gp[:, :, 3, np.newaxis] + gr = Quaternions.from_transforms(gt) + + x = self.animation.rotations.euler().reshape(nf, -1) + w = self.weights.repeat(3) + + if self.translate: + x = np.hstack([x, self.animation.positions.reshape(nf, -1)]) + w = np.hstack([w, self.weights_translate.repeat(3)]) + + """ Generate Jacobian """ + if self.recalculate or i == 0: + j = self.jacobian(x, gp, gr, self.targets, self.first_descendants, self.first_tdescendants) + + """ Update Variables """ + l = self.damping * (1.0 / (w + 0.001)) + d = (l * l) * np.eye(x.shape[1]) + e = gamma * (self.endeff.reshape(nf, -1) - gp[:, np.array(list(self.targets.keys()))].reshape(nf, -1)) + + x += np.array(list(map(lambda jf, ef: + linalg.lu_solve(linalg.lu_factor(jf.T.dot(jf) + d), jf.T.dot(ef)), j, e))) + + """ Generate Secondary Jacobian """ + if self.references is not None: + + ns = np.array(list(map(lambda jf: + np.eye(x.shape[1]) - linalg.solve(jf.T.dot(jf) + d, jf.T.dot(jf)), j))) + + if self.recalculate or i == 0: + j2 = self.jacobian(x, gp, gr, self.second_targets, self.second_descendants, + self.second_tdescendants) + + e2 = self.secondary * (self.references.reshape(nf, -1) - gp.reshape(nf, -1)) + + x += np.array(list(map(lambda nsf, j2f, e2f: + nsf.dot(linalg.lu_solve(linalg.lu_factor(j2f.T.dot(j2f) + d), j2f.T.dot(e2f))), + ns, j2, e2))) + + """ Set Back Rotations / Translations """ + self.animation.rotations = Quaternions.from_euler( + x[:, :nj * 3].reshape((nf, nj, 3)), order='xyz', world=True) + + if self.translate: + self.animation.positions = x[:, nj * 3:].reshape((nf, nj, 3)) + + """ Generate Error """ + + if not self.silent: + gp = Animation.positions_global(self.animation) + gp = gp[:, np.array(list(self.targets.keys()))] + error = np.mean(np.sum((self.endeff - gp) ** 2.0, axis=2) ** 0.5) + print('[JacobianInverseKinematics] Iteration %i | Error: %f' % (i + 1, error)) + return self.animation + + +class BasicJacobianIK: + """ + Same interface as BasicInverseKinematics + but uses the Jacobian IK Solver Instead + """ + + def __init__(self, animation, positions, iterations=10, silent=True, **kw): + targets = dict([(i, positions[:, i]) for i in range(positions.shape[1])]) + self.ik = JacobianInverseKinematics(animation, targets, iterations=iterations, silent=silent, **kw) + + def __call__(self, **kw): + return self.ik(**kw) + + +class ICP: + + def __init__(self, + anim, rest, weights, mesh, goal, + find_closest=True, damping=10, + iterations=10, silent=True, + translate=True, recalculate=True, + weights_translate=None): + + self.animation = anim + self.rest = rest + self.vweights = weights + self.mesh = mesh + self.goal = goal + self.find_closest = find_closest + self.iterations = iterations + self.silent = silent + self.translate = translate + self.damping = damping + self.weights = None + self.weights_translate = weights_translate + self.recalculate = recalculate + + def cross(self, a, b): + o = np.empty(b.shape) + o[..., 0] = a[..., 1] * b[..., 2] - a[..., 2] * b[..., 1] + o[..., 1] = a[..., 2] * b[..., 0] - a[..., 0] * b[..., 2] + o[..., 2] = a[..., 0] * b[..., 1] - a[..., 1] * b[..., 0] + return o + + def jacobian(self, x, fp, fr, goal, weights, des_r, des_t): + + """ Find parent rotations """ + prs = fr[:, self.animation.parents] + prs[:, 0] = Quaternions.id((1)) + + """ Get partial rotations """ + qys = Quaternions.from_angle_axis(x[:, 1:prs.shape[1] * 3:3], np.array([[[0, 1, 0]]])) + qzs = Quaternions.from_angle_axis(x[:, 2:prs.shape[1] * 3:3], np.array([[[0, 0, 1]]])) + + """ Find axis of rotations """ + es = np.empty((len(x), fr.shape[1] * 3, 3)) + es[:, 0::3] = ((prs * qzs) * qys) * np.array([[[1, 0, 0]]]) + es[:, 1::3] = ((prs * qzs) * np.array([[[0, 1, 0]]])) + es[:, 2::3] = ((prs * np.array([[[0, 0, 1]]]))) + + """ Construct Jacobian """ + j = fp.repeat(3, axis=1) + j = des_r[np.newaxis, :, :, :, np.newaxis] * ( + goal[:, np.newaxis, :, np.newaxis] - j[:, :, np.newaxis, np.newaxis]) + j = np.sum(j * weights[np.newaxis, np.newaxis, :, :, np.newaxis], 3) + j = self.cross(es[:, :, np.newaxis, :], j) + j = np.swapaxes(j.reshape((len(x), fr.shape[1] * 3, goal.shape[1] * 3)), 1, 2) + + if self.translate: + es = np.empty((len(x), fr.shape[1] * 3, 3)) + es[:, 0::3] = prs * np.array([[[1, 0, 0]]]) + es[:, 1::3] = prs * np.array([[[0, 1, 0]]]) + es[:, 2::3] = prs * np.array([[[0, 0, 1]]]) + + jt = des_t[np.newaxis, :, :, :, np.newaxis] * es[:, :, np.newaxis, np.newaxis, :].repeat(goal.shape[1], + axis=2) + jt = np.sum(jt * weights[np.newaxis, np.newaxis, :, :, np.newaxis], 3) + jt = np.swapaxes(jt.reshape((len(x), fr.shape[1] * 3, goal.shape[1] * 3)), 1, 2) + + j = np.concatenate([j, jt], axis=-1) + + return j + + # @profile(immediate=True) + def __call__(self, descendants=None, maxjoints=4, gamma=1.0, transpose=False): + + """ Calculate Masses """ + if self.weights is None: + self.weights = np.ones(self.animation.shape[1]) + + if self.weights_translate is None: + self.weights_translate = np.ones(self.animation.shape[1]) + + nf = len(self.animation) + nj = self.animation.shape[1] + nv = self.goal.shape[1] + + weightids = np.argsort(-self.vweights, axis=1)[:, :maxjoints] + weightvls = np.array(list(map(lambda w, i: w[i], self.vweights, weightids))) + weightvls = weightvls / weightvls.sum(axis=1)[..., np.newaxis] + + if descendants is None: + self.descendants = AnimationStructure.descendants_mask(self.animation.parents) + else: + self.descendants = descendants + + des_r = np.eye(nj) + self.descendants + des_r = des_r[:, weightids].repeat(3, axis=0) + + des_t = np.eye(nj) + self.descendants + des_t = des_t[:, weightids].repeat(3, axis=0) + + if not self.silent: + curr = Animation.skin(self.animation, self.rest, self.vweights, self.mesh, maxjoints=maxjoints) + error = np.mean(np.sqrt(np.sum((curr - self.goal) ** 2.0, axis=-1))) + print('[ICP] Start | Error: %f' % error) + + for i in range(self.iterations): + + """ Get Global Rotations & Positions """ + gt = Animation.transforms_global(self.animation) + gp = gt[:, :, :, 3] + gp = gp[:, :, :3] / gp[:, :, 3, np.newaxis] + gr = Quaternions.from_transforms(gt) + + x = self.animation.rotations.euler().reshape(nf, -1) + w = self.weights.repeat(3) + + if self.translate: + x = np.hstack([x, self.animation.positions.reshape(nf, -1)]) + w = np.hstack([w, self.weights_translate.repeat(3)]) + + """ Get Current State """ + curr = Animation.skin(self.animation, self.rest, self.vweights, self.mesh, maxjoints=maxjoints) + + """ Find Cloest Points """ + if self.find_closest: + mapping = np.argmin( + (curr[:, :, np.newaxis] - + self.goal[:, np.newaxis, :]) ** 2.0, axis=2) + e = gamma * (np.array(list(map(lambda g, m: g[m], self.goal, mapping))) - curr).reshape(nf, -1) + else: + e = gamma * (self.goal - curr).reshape(nf, -1) + + """ Generate Jacobian """ + if self.recalculate or i == 0: + j = self.jacobian(x, gp, gr, self.goal, weightvls, des_r, des_t) + + """ Update Variables """ + l = self.damping * (1.0 / (w + 1e-10)) + d = (l * l) * np.eye(x.shape[1]) + + if transpose: + x += np.array(list(map(lambda jf, ef: jf.T.dot(ef), j, e))) + else: + x += np.array(list(map(lambda jf, ef: + linalg.lu_solve(linalg.lu_factor(jf.T.dot(jf) + d), jf.T.dot(ef)), j, e))) + + """ Set Back Rotations / Translations """ + self.animation.rotations = Quaternions.from_euler( + x[:, :nj * 3].reshape((nf, nj, 3)), order='xyz', world=True) + + if self.translate: + self.animation.positions = x[:, nj * 3:].reshape((nf, nj, 3)) + + if not self.silent: + curr = Animation.skin(self.animation, self.rest, self.vweights, self.mesh) + error = np.mean(np.sqrt(np.sum((curr - self.goal) ** 2.0, axis=-1))) + print('[ICP] Iteration %i | Error: %f' % (i + 1, error)) + +import torch +from torch import nn +class InverseKinematics: + def __init__(self, rotations: torch.Tensor, positions: torch.Tensor, offset, parents, constrains): + self.rotations = rotations.cuda() + self.rotations.requires_grad_(True) + self.position = positions.cuda() + self.position.requires_grad_(True) + + self.parents = parents + self.offset = offset.cuda() + self.constrains = constrains.cuda() + # hyper-param to tune + self.optimizer = torch.optim.AdamW([self.position, self.rotations], lr=5e-2, betas=(0.9, 0.999)) + self.crit = nn.MSELoss() + self.weights = torch.ones([1,22,1]).cuda() + self.weights[:, [4, 8]] = 0.8 + self.weights[:, [1, 5]] = 2. + + def step(self): + self.optimizer.zero_grad() + glb = self.forward(self.rotations, self.position, self.offset, order='', quater=True, world=True) + # weighted joint position mse + loss = self.crit(glb*self.weights, self.constrains*self.weights) + # regularization term + loss += 0.5 * self.crit(self.rotations[1:, [3, 7, 12, 16, 20]], self.rotations[:-1, [3, 7, 12, 16, 20]]) + 0.1 * self.crit(self.rotations[1:], self.rotations[:-1]) + loss.backward() + self.optimizer.step() + self.glb = glb + return loss.item() + + def tloss(self, time): + return self.crit(self.glb[time, :], self.constrains[time, :]) + + def all_loss(self): + res = [self.tloss(t).detach().numpy() for t in range(self.constrains.shape[0])] + return np.array(res) + + ''' + rotation should have shape batch_size * Joint_num * (3/4) * Time + position should have shape batch_size * 3 * Time + offset should have shape batch_size * Joint_num * 3 + output have shape batch_size * Time * Joint_num * 3 + ''' + + def forward(self, rotation: torch.Tensor, position: torch.Tensor, offset: torch.Tensor, order='xyz', quater=False, + world=True): + ''' + if not quater and rotation.shape[-2] != 3: raise Exception('Unexpected shape of rotation') + if quater and rotation.shape[-2] != 4: raise Exception('Unexpected shape of rotation') + rotation = rotation.permute(0, 3, 1, 2) + position = position.permute(0, 2, 1) + ''' + result = torch.empty(rotation.shape[:-1] + (3,), device=position.device) + + norm = torch.norm(rotation, dim=-1, keepdim=True) + rotation = rotation / norm + + # if quater: + transform = self.transform_from_quaternion(rotation) + # else: + # transform = self.transform_from_euler(rotation, order) + + offset = offset.reshape((-1, 1, offset.shape[-2], offset.shape[-1], 1)) + + result[..., 0, :] = position + for i, pi in enumerate(self.parents): + if pi == -1: + assert i == 0 + continue + + result[..., i, :] = torch.matmul(transform[..., pi, :, :], offset[..., i, :, :]).squeeze() + transform[..., i, :, :] = torch.matmul(transform[..., pi, :, :].clone(), transform[..., i, :, :].clone()) + if world: result[..., i, :] += result[..., pi, :] + return result + + @staticmethod + def transform_from_axis(euler, axis): + transform = torch.empty(euler.shape[0:3] + (3, 3), device=euler.device) + cos = torch.cos(euler) + sin = torch.sin(euler) + cord = ord(axis) - ord('x') + + transform[..., cord, :] = transform[..., :, cord] = 0 + transform[..., cord, cord] = 1 + + if axis == 'x': + transform[..., 1, 1] = transform[..., 2, 2] = cos + transform[..., 1, 2] = -sin + transform[..., 2, 1] = sin + if axis == 'y': + transform[..., 0, 0] = transform[..., 2, 2] = cos + transform[..., 0, 2] = sin + transform[..., 2, 0] = -sin + if axis == 'z': + transform[..., 0, 0] = transform[..., 1, 1] = cos + transform[..., 0, 1] = -sin + transform[..., 1, 0] = sin + + return transform + + @staticmethod + def transform_from_quaternion(quater: torch.Tensor): + qw = quater[..., 0] + qx = quater[..., 1] + qy = quater[..., 2] + qz = quater[..., 3] + + x2 = qx + qx + y2 = qy + qy + z2 = qz + qz + xx = qx * x2 + yy = qy * y2 + wx = qw * x2 + xy = qx * y2 + yz = qy * z2 + wy = qw * y2 + xz = qx * z2 + zz = qz * z2 + wz = qw * z2 + + m = torch.empty(quater.shape[:-1] + (3, 3), device=quater.device) + m[..., 0, 0] = 1.0 - (yy + zz) + m[..., 0, 1] = xy - wz + m[..., 0, 2] = xz + wy + m[..., 1, 0] = xy + wz + m[..., 1, 1] = 1.0 - (xx + zz) + m[..., 1, 2] = yz - wx + m[..., 2, 0] = xz - wy + m[..., 2, 1] = yz + wx + m[..., 2, 2] = 1.0 - (xx + yy) + + return m \ No newline at end of file diff --git a/visualization/Quaternions.py b/visualization/Quaternions.py new file mode 100644 index 0000000000000000000000000000000000000000..7226326bc496983560ab06a89670609703e2149f --- /dev/null +++ b/visualization/Quaternions.py @@ -0,0 +1,497 @@ +import numpy as np + + +class Quaternions: + """ + Quaternions is a wrapper around a numpy ndarray + that allows it to act as if it were an narray of + a quater data type. + + Therefore addition, subtraction, multiplication, + division, negation, absolute, are all defined + in terms of quater operations such as quater + multiplication. + + This allows for much neater code and many routines + which conceptually do the same thing to be written + in the same way for point data and for rotation data. + + The Quaternions class has been desgined such that it + should support broadcasting and slicing in all of the + usual ways. + """ + + def __init__(self, qs): + if isinstance(qs, np.ndarray): + if len(qs.shape) == 1: qs = np.array([qs]) + self.qs = qs + return + + if isinstance(qs, Quaternions): + self.qs = qs + return + + raise TypeError('Quaternions must be constructed from iterable, numpy array, or Quaternions, not %s' % type(qs)) + + def __str__(self): + return "Quaternions(" + str(self.qs) + ")" + + def __repr__(self): + return "Quaternions(" + repr(self.qs) + ")" + + """ Helper Methods for Broadcasting and Data extraction """ + + @classmethod + def _broadcast(cls, sqs, oqs, scalar=False): + if isinstance(oqs, float): return sqs, oqs * np.ones(sqs.shape[:-1]) + + ss = np.array(sqs.shape) if not scalar else np.array(sqs.shape[:-1]) + os = np.array(oqs.shape) + + if len(ss) != len(os): + raise TypeError('Quaternions cannot broadcast together shapes %s and %s' % (sqs.shape, oqs.shape)) + + if np.all(ss == os): return sqs, oqs + + if not np.all((ss == os) | (os == np.ones(len(os))) | (ss == np.ones(len(ss)))): + raise TypeError('Quaternions cannot broadcast together shapes %s and %s' % (sqs.shape, oqs.shape)) + + sqsn, oqsn = sqs.copy(), oqs.copy() + + for a in np.where(ss == 1)[0]: sqsn = sqsn.repeat(os[a], axis=a) + for a in np.where(os == 1)[0]: oqsn = oqsn.repeat(ss[a], axis=a) + + return sqsn, oqsn + + """ Adding Quaterions is just Defined as Multiplication """ + + def __add__(self, other): + return self * other + + def __sub__(self, other): + return self / other + + """ Quaterion Multiplication """ + + def __mul__(self, other): + """ + Quaternion multiplication has three main methods. + + When multiplying a Quaternions array by Quaternions + normal quater multiplication is performed. + + When multiplying a Quaternions array by a vector + array of the same shape, where the last axis is 3, + it is assumed to be a Quaternion by 3D-Vector + multiplication and the 3D-Vectors are rotated + in space by the Quaternions. + + When multipplying a Quaternions array by a scalar + or vector of different shape it is assumed to be + a Quaternions by Scalars multiplication and the + Quaternions are scaled using Slerp and the identity + quaternions. + """ + + """ If Quaternions type do Quaternions * Quaternions """ + if isinstance(other, Quaternions): + sqs, oqs = Quaternions._broadcast(self.qs, other.qs) + + q0 = sqs[..., 0]; + q1 = sqs[..., 1]; + q2 = sqs[..., 2]; + q3 = sqs[..., 3]; + r0 = oqs[..., 0]; + r1 = oqs[..., 1]; + r2 = oqs[..., 2]; + r3 = oqs[..., 3]; + + qs = np.empty(sqs.shape) + qs[..., 0] = r0 * q0 - r1 * q1 - r2 * q2 - r3 * q3 + qs[..., 1] = r0 * q1 + r1 * q0 - r2 * q3 + r3 * q2 + qs[..., 2] = r0 * q2 + r1 * q3 + r2 * q0 - r3 * q1 + qs[..., 3] = r0 * q3 - r1 * q2 + r2 * q1 + r3 * q0 + + return Quaternions(qs) + + """ If array type do Quaternions * Vectors """ + if isinstance(other, np.ndarray) and other.shape[-1] == 3: + vs = Quaternions(np.concatenate([np.zeros(other.shape[:-1] + (1,)), other], axis=-1)) + + return (self * (vs * -self)).imaginaries + + """ If float do Quaternions * Scalars """ + if isinstance(other, np.ndarray) or isinstance(other, float): + return Quaternions.slerp(Quaternions.id_like(self), self, other) + + raise TypeError('Cannot multiply/add Quaternions with type %s' % str(type(other))) + + def __div__(self, other): + """ + When a Quaternion type is supplied, division is defined + as multiplication by the inverse of that Quaternion. + + When a scalar or vector is supplied it is defined + as multiplicaion of one over the supplied value. + Essentially a scaling. + """ + + if isinstance(other, Quaternions): return self * (-other) + if isinstance(other, np.ndarray): return self * (1.0 / other) + if isinstance(other, float): return self * (1.0 / other) + raise TypeError('Cannot divide/subtract Quaternions with type %s' + str(type(other))) + + def __eq__(self, other): + return self.qs == other.qs + + def __ne__(self, other): + return self.qs != other.qs + + def __neg__(self): + """ Invert Quaternions """ + return Quaternions(self.qs * np.array([[1, -1, -1, -1]])) + + def __abs__(self): + """ Unify Quaternions To Single Pole """ + qabs = self.normalized().copy() + top = np.sum((qabs.qs) * np.array([1, 0, 0, 0]), axis=-1) + bot = np.sum((-qabs.qs) * np.array([1, 0, 0, 0]), axis=-1) + qabs.qs[top < bot] = -qabs.qs[top < bot] + return qabs + + def __iter__(self): + return iter(self.qs) + + def __len__(self): + return len(self.qs) + + def __getitem__(self, k): + return Quaternions(self.qs[k]) + + def __setitem__(self, k, v): + self.qs[k] = v.qs + + @property + def lengths(self): + return np.sum(self.qs ** 2.0, axis=-1) ** 0.5 + + @property + def reals(self): + return self.qs[..., 0] + + @property + def imaginaries(self): + return self.qs[..., 1:4] + + @property + def shape(self): + return self.qs.shape[:-1] + + def repeat(self, n, **kwargs): + return Quaternions(self.qs.repeat(n, **kwargs)) + + def normalized(self): + return Quaternions(self.qs / self.lengths[..., np.newaxis]) + + def log(self): + norm = abs(self.normalized()) + imgs = norm.imaginaries + lens = np.sqrt(np.sum(imgs ** 2, axis=-1)) + lens = np.arctan2(lens, norm.reals) / (lens + 1e-10) + return imgs * lens[..., np.newaxis] + + def constrained(self, axis): + + rl = self.reals + im = np.sum(axis * self.imaginaries, axis=-1) + + t1 = -2 * np.arctan2(rl, im) + np.pi + t2 = -2 * np.arctan2(rl, im) - np.pi + + top = Quaternions.exp(axis[np.newaxis] * (t1[:, np.newaxis] / 2.0)) + bot = Quaternions.exp(axis[np.newaxis] * (t2[:, np.newaxis] / 2.0)) + img = self.dot(top) > self.dot(bot) + + ret = top.copy() + ret[img] = top[img] + ret[~img] = bot[~img] + return ret + + def constrained_x(self): + return self.constrained(np.array([1, 0, 0])) + + def constrained_y(self): + return self.constrained(np.array([0, 1, 0])) + + def constrained_z(self): + return self.constrained(np.array([0, 0, 1])) + + def dot(self, q): + return np.sum(self.qs * q.qs, axis=-1) + + def copy(self): + return Quaternions(np.copy(self.qs)) + + def reshape(self, s): + self.qs.reshape(s) + return self + + def interpolate(self, ws): + return Quaternions.exp(np.average(abs(self).log, axis=0, weights=ws)) + + def euler(self, order='xyz'): # fix the wrong convert, this should convert to world euler by default. + + q = self.normalized().qs + q0 = q[..., 0] + q1 = q[..., 1] + q2 = q[..., 2] + q3 = q[..., 3] + es = np.zeros(self.shape + (3,)) + + if order == 'xyz': + es[..., 0] = np.arctan2(2 * (q0 * q1 + q2 * q3), 1 - 2 * (q1 * q1 + q2 * q2)) + es[..., 1] = np.arcsin((2 * (q0 * q2 - q3 * q1)).clip(-1, 1)) + es[..., 2] = np.arctan2(2 * (q0 * q3 + q1 * q2), 1 - 2 * (q2 * q2 + q3 * q3)) + elif order == 'yzx': + es[..., 0] = np.arctan2(2 * (q1 * q0 - q2 * q3), -q1 * q1 + q2 * q2 - q3 * q3 + q0 * q0) + es[..., 1] = np.arctan2(2 * (q2 * q0 - q1 * q3), q1 * q1 - q2 * q2 - q3 * q3 + q0 * q0) + es[..., 2] = np.arcsin((2 * (q1 * q2 + q3 * q0)).clip(-1, 1)) + else: + raise NotImplementedError('Cannot convert from ordering %s' % order) + + """ + + # These conversion don't appear to work correctly for Maya. + # http://bediyap.com/programming/convert-quaternion-to-euler-rotations/ + + if order == 'xyz': + es[fa + (0,)] = np.arctan2(2 * (q0 * q3 - q1 * q2), q0 * q0 + q1 * q1 - q2 * q2 - q3 * q3) + es[fa + (1,)] = np.arcsin((2 * (q1 * q3 + q0 * q2)).clip(-1,1)) + es[fa + (2,)] = np.arctan2(2 * (q0 * q1 - q2 * q3), q0 * q0 - q1 * q1 - q2 * q2 + q3 * q3) + elif order == 'yzx': + es[fa + (0,)] = np.arctan2(2 * (q0 * q1 - q2 * q3), q0 * q0 - q1 * q1 + q2 * q2 - q3 * q3) + es[fa + (1,)] = np.arcsin((2 * (q1 * q2 + q0 * q3)).clip(-1,1)) + es[fa + (2,)] = np.arctan2(2 * (q0 * q2 - q1 * q3), q0 * q0 + q1 * q1 - q2 * q2 - q3 * q3) + elif order == 'zxy': + es[fa + (0,)] = np.arctan2(2 * (q0 * q2 - q1 * q3), q0 * q0 - q1 * q1 - q2 * q2 + q3 * q3) + es[fa + (1,)] = np.arcsin((2 * (q0 * q1 + q2 * q3)).clip(-1,1)) + es[fa + (2,)] = np.arctan2(2 * (q0 * q3 - q1 * q2), q0 * q0 - q1 * q1 + q2 * q2 - q3 * q3) + elif order == 'xzy': + es[fa + (0,)] = np.arctan2(2 * (q0 * q2 + q1 * q3), q0 * q0 + q1 * q1 - q2 * q2 - q3 * q3) + es[fa + (1,)] = np.arcsin((2 * (q0 * q3 - q1 * q2)).clip(-1,1)) + es[fa + (2,)] = np.arctan2(2 * (q0 * q1 + q2 * q3), q0 * q0 - q1 * q1 + q2 * q2 - q3 * q3) + elif order == 'yxz': + es[fa + (0,)] = np.arctan2(2 * (q1 * q2 + q0 * q3), q0 * q0 - q1 * q1 + q2 * q2 - q3 * q3) + es[fa + (1,)] = np.arcsin((2 * (q0 * q1 - q2 * q3)).clip(-1,1)) + es[fa + (2,)] = np.arctan2(2 * (q1 * q3 + q0 * q2), q0 * q0 - q1 * q1 - q2 * q2 + q3 * q3) + elif order == 'zyx': + es[fa + (0,)] = np.arctan2(2 * (q0 * q1 + q2 * q3), q0 * q0 - q1 * q1 - q2 * q2 + q3 * q3) + es[fa + (1,)] = np.arcsin((2 * (q0 * q2 - q1 * q3)).clip(-1,1)) + es[fa + (2,)] = np.arctan2(2 * (q0 * q3 + q1 * q2), q0 * q0 + q1 * q1 - q2 * q2 - q3 * q3) + else: + raise KeyError('Unknown ordering %s' % order) + + """ + + # https://github.com/ehsan/ogre/blob/master/OgreMain/src/OgreMatrix3.cpp + # Use this class and convert from matrix + + return es + + def average(self): + + if len(self.shape) == 1: + + import numpy.core.umath_tests as ut + system = ut.matrix_multiply(self.qs[:, :, np.newaxis], self.qs[:, np.newaxis, :]).sum(axis=0) + w, v = np.linalg.eigh(system) + qiT_dot_qref = (self.qs[:, :, np.newaxis] * v[np.newaxis, :, :]).sum(axis=1) + return Quaternions(v[:, np.argmin((1. - qiT_dot_qref ** 2).sum(axis=0))]) + + else: + + raise NotImplementedError('Cannot average multi-dimensionsal Quaternions') + + def angle_axis(self): + + norm = self.normalized() + s = np.sqrt(1 - (norm.reals ** 2.0)) + s[s == 0] = 0.001 + + angles = 2.0 * np.arccos(norm.reals) + axis = norm.imaginaries / s[..., np.newaxis] + + return angles, axis + + def transforms(self): + + qw = self.qs[..., 0] + qx = self.qs[..., 1] + qy = self.qs[..., 2] + qz = self.qs[..., 3] + + x2 = qx + qx; + y2 = qy + qy; + z2 = qz + qz; + xx = qx * x2; + yy = qy * y2; + wx = qw * x2; + xy = qx * y2; + yz = qy * z2; + wy = qw * y2; + xz = qx * z2; + zz = qz * z2; + wz = qw * z2; + + m = np.empty(self.shape + (3, 3)) + m[..., 0, 0] = 1.0 - (yy + zz) + m[..., 0, 1] = xy - wz + m[..., 0, 2] = xz + wy + m[..., 1, 0] = xy + wz + m[..., 1, 1] = 1.0 - (xx + zz) + m[..., 1, 2] = yz - wx + m[..., 2, 0] = xz - wy + m[..., 2, 1] = yz + wx + m[..., 2, 2] = 1.0 - (xx + yy) + + return m + + def ravel(self): + return self.qs.ravel() + + @classmethod + def id(cls, n): + + if isinstance(n, tuple): + qs = np.zeros(n + (4,)) + qs[..., 0] = 1.0 + return Quaternions(qs) + + if isinstance(n, int): + qs = np.zeros((n, 4)) + qs[:, 0] = 1.0 + return Quaternions(qs) + + raise TypeError('Cannot Construct Quaternion from %s type' % str(type(n))) + + @classmethod + def id_like(cls, a): + qs = np.zeros(a.shape + (4,)) + qs[..., 0] = 1.0 + return Quaternions(qs) + + @classmethod + def exp(cls, ws): + + ts = np.sum(ws ** 2.0, axis=-1) ** 0.5 + ts[ts == 0] = 0.001 + ls = np.sin(ts) / ts + + qs = np.empty(ws.shape[:-1] + (4,)) + qs[..., 0] = np.cos(ts) + qs[..., 1] = ws[..., 0] * ls + qs[..., 2] = ws[..., 1] * ls + qs[..., 3] = ws[..., 2] * ls + + return Quaternions(qs).normalized() + + @classmethod + def slerp(cls, q0s, q1s, a): + + fst, snd = cls._broadcast(q0s.qs, q1s.qs) + fst, a = cls._broadcast(fst, a, scalar=True) + snd, a = cls._broadcast(snd, a, scalar=True) + + len = np.sum(fst * snd, axis=-1) + + neg = len < 0.0 + len[neg] = -len[neg] + snd[neg] = -snd[neg] + + amount0 = np.zeros(a.shape) + amount1 = np.zeros(a.shape) + + linear = (1.0 - len) < 0.01 + omegas = np.arccos(len[~linear]) + sinoms = np.sin(omegas) + + amount0[linear] = 1.0 - a[linear] + amount1[linear] = a[linear] + amount0[~linear] = np.sin((1.0 - a[~linear]) * omegas) / sinoms + amount1[~linear] = np.sin(a[~linear] * omegas) / sinoms + + return Quaternions( + amount0[..., np.newaxis] * fst + + amount1[..., np.newaxis] * snd) + + @classmethod + def between(cls, v0s, v1s): + a = np.cross(v0s, v1s) + w = np.sqrt((v0s ** 2).sum(axis=-1) * (v1s ** 2).sum(axis=-1)) + (v0s * v1s).sum(axis=-1) + return Quaternions(np.concatenate([w[..., np.newaxis], a], axis=-1)).normalized() + + @classmethod + def from_angle_axis(cls, angles, axis): + axis = axis / (np.sqrt(np.sum(axis ** 2, axis=-1)) + 1e-10)[..., np.newaxis] + sines = np.sin(angles / 2.0)[..., np.newaxis] + cosines = np.cos(angles / 2.0)[..., np.newaxis] + return Quaternions(np.concatenate([cosines, axis * sines], axis=-1)) + + @classmethod + def from_euler(cls, es, order='xyz', world=False): + + axis = { + 'x': np.array([1, 0, 0]), + 'y': np.array([0, 1, 0]), + 'z': np.array([0, 0, 1]), + } + + q0s = Quaternions.from_angle_axis(es[..., 0], axis[order[0]]) + q1s = Quaternions.from_angle_axis(es[..., 1], axis[order[1]]) + q2s = Quaternions.from_angle_axis(es[..., 2], axis[order[2]]) + + return (q2s * (q1s * q0s)) if world else (q0s * (q1s * q2s)) + + @classmethod + def from_transforms(cls, ts): + + d0, d1, d2 = ts[..., 0, 0], ts[..., 1, 1], ts[..., 2, 2] + + q0 = (d0 + d1 + d2 + 1.0) / 4.0 + q1 = (d0 - d1 - d2 + 1.0) / 4.0 + q2 = (-d0 + d1 - d2 + 1.0) / 4.0 + q3 = (-d0 - d1 + d2 + 1.0) / 4.0 + + q0 = np.sqrt(q0.clip(0, None)) + q1 = np.sqrt(q1.clip(0, None)) + q2 = np.sqrt(q2.clip(0, None)) + q3 = np.sqrt(q3.clip(0, None)) + + c0 = (q0 >= q1) & (q0 >= q2) & (q0 >= q3) + c1 = (q1 >= q0) & (q1 >= q2) & (q1 >= q3) + c2 = (q2 >= q0) & (q2 >= q1) & (q2 >= q3) + c3 = (q3 >= q0) & (q3 >= q1) & (q3 >= q2) + + q1[c0] *= np.sign(ts[c0, 2, 1] - ts[c0, 1, 2]) + q2[c0] *= np.sign(ts[c0, 0, 2] - ts[c0, 2, 0]) + q3[c0] *= np.sign(ts[c0, 1, 0] - ts[c0, 0, 1]) + + q0[c1] *= np.sign(ts[c1, 2, 1] - ts[c1, 1, 2]) + q2[c1] *= np.sign(ts[c1, 1, 0] + ts[c1, 0, 1]) + q3[c1] *= np.sign(ts[c1, 0, 2] + ts[c1, 2, 0]) + + q0[c2] *= np.sign(ts[c2, 0, 2] - ts[c2, 2, 0]) + q1[c2] *= np.sign(ts[c2, 1, 0] + ts[c2, 0, 1]) + q3[c2] *= np.sign(ts[c2, 2, 1] + ts[c2, 1, 2]) + + q0[c3] *= np.sign(ts[c3, 1, 0] - ts[c3, 0, 1]) + q1[c3] *= np.sign(ts[c3, 2, 0] + ts[c3, 0, 2]) + q2[c3] *= np.sign(ts[c3, 2, 1] + ts[c3, 1, 2]) + + qs = np.empty(ts.shape[:-2] + (4,)) + qs[..., 0] = q0 + qs[..., 1] = q1 + qs[..., 2] = q2 + qs[..., 3] = q3 + + return cls(qs) \ No newline at end of file diff --git a/visualization/__init__.py b/visualization/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/visualization/data/.DS_Store b/visualization/data/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..4802556e01d6caeee59148fad823704f2de85f07 Binary files /dev/null and b/visualization/data/.DS_Store differ diff --git a/visualization/data/gBR_sBM_cAll_d04_mBR0_ch01.pkl b/visualization/data/gBR_sBM_cAll_d04_mBR0_ch01.pkl new file mode 100644 index 0000000000000000000000000000000000000000..2bc25371145f6e89a929fe4aeedd224acfc48bb9 --- /dev/null +++ b/visualization/data/gBR_sBM_cAll_d04_mBR0_ch01.pkl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51768ab001906029b273de1a7c15e8c6574f285663a28f4d8e0ce6dd44926bf3 +size 216300 diff --git a/visualization/data/smpl/smpl/.DS_Store b/visualization/data/smpl/smpl/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 Binary files /dev/null and b/visualization/data/smpl/smpl/.DS_Store differ diff --git a/visualization/data/smpl/smpl/smpl.txt b/visualization/data/smpl/smpl/smpl.txt new file mode 100644 index 0000000000000000000000000000000000000000..5f418a9b417a68ffb8ad6935dab39e2539edad34 --- /dev/null +++ b/visualization/data/smpl/smpl/smpl.txt @@ -0,0 +1,8 @@ +Once you have downloaded the SMPL model, place it here like below. + +data +|_smpl + |_smpl + |_SMPL_FEMALE.pkl + |_SMPL_MALE.pkl + |_SMPL_NEUTRAL.pkl diff --git a/visualization/data/template.bvh b/visualization/data/template.bvh new file mode 100644 index 0000000000000000000000000000000000000000..20c0c65aee60c2ed1ef7d98815a6b5dcb4e0d368 --- /dev/null +++ b/visualization/data/template.bvh @@ -0,0 +1,854 @@ +HIERARCHY +ROOT Hips +{ + OFFSET -0.001795 -0.223333 0.028219 + CHANNELS 6 Xposition Yposition Zposition Zrotation Yrotation Xrotation + JOINT LeftUpLeg + { + OFFSET 0.069520 -0.091406 -0.006815 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT LeftLeg + { + OFFSET 0.034277 -0.375199 -0.004496 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT LeftFoot + { + OFFSET -0.013596 -0.397961 -0.043693 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT LeftToe + { + OFFSET 0.026358 -0.055791 0.119288 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + JOINT RightUpLeg + { + OFFSET -0.067670 -0.090522 -0.004320 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT RightLeg + { + OFFSET -0.038290 -0.382569 -0.008850 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT RightFoot + { + OFFSET 0.015774 -0.398415 -0.042312 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT RightToe + { + OFFSET -0.025372 -0.048144 0.123348 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + JOINT Spine + { + OFFSET -0.002533 0.108963 -0.026696 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Spine1 + { + OFFSET 0.005487 0.135180 0.001092 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Spine2 + { + OFFSET 0.001457 0.052922 0.025425 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Neck + { + OFFSET -0.002778 0.213870 -0.042857 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT Head + { + OFFSET 0.005152 0.064970 0.051349 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + JOINT LeftShoulder + { + OFFSET 0.078845 0.121749 -0.034090 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT LeftArm + { + OFFSET 0.090977 0.030469 -0.008868 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT LeftForeArm + { + OFFSET 0.259612 -0.012772 -0.027456 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT LeftHand + { + OFFSET 0.249234 0.008986 -0.001171 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + JOINT RightShoulder + { + OFFSET -0.081759 0.118833 -0.038615 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT RightArm + { + OFFSET -0.096012 0.032551 -0.009143 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT RightForeArm + { + OFFSET -0.253742 -0.013329 -0.021401 + CHANNELS 3 Zrotation Yrotation Xrotation + JOINT RightHand + { + OFFSET -0.255298 0.007772 -0.005559 + CHANNELS 3 Zrotation Yrotation Xrotation + End Site + { + OFFSET 0.000000 0.000000 0.000000 + } + } + } + } + } + } + } + } +} +MOTION +Frames: 720 +Frame Time: 0.016667 +-0.159536 1.582612 0.030130 -6.548568 2.583855 -18.484306 2.567626 -0.642801 -12.453255 -17.111603 3.336555 16.983561 -0.646515 0.385496 -0.056215 0.325094 -0.032605 0.189901 11.448563 8.871870 6.436031 21.109348 -6.065577 45.020580 -0.174829 0.026075 0.116341 0.072238 0.260225 0.053027 4.465475 2.398752 11.553416 -5.916316 5.109896 9.693657 -10.230002 5.977373 8.161955 -4.592945 0.456784 10.607079 11.999027 -6.871897 -9.583961 0.986580 11.602270 -6.802592 -10.811317 -2.869949 -1.570219 43.446667 -20.007170 -7.731044 0.092445 -0.321820 0.690197 0.794326 -2.761873 -4.701620 6.150688 4.680287 -2.319729 -7.082062 6.923985 -0.347780 -0.400098 0.244321 -0.323698 +-0.161087 1.583428 0.030032 -6.436900 2.553235 -18.466497 2.628736 -0.640951 -12.167108 -17.277838 3.260565 16.452961 -0.623134 0.361270 -0.052679 0.329175 -0.021943 0.188075 11.625759 8.663714 6.621767 20.507597 -5.825788 44.947929 -0.176207 0.037369 0.118593 0.068431 0.250536 0.048086 4.242087 2.434052 12.115721 -6.077591 5.185571 9.527125 -10.338363 5.937043 7.690588 -4.605536 0.197104 10.837864 12.726488 -7.272390 -9.544734 1.642845 11.950652 -6.932811 -11.680576 -4.277152 -1.549070 43.571354 -20.612377 -8.049021 0.109730 -0.311815 0.682838 0.926398 -3.272447 -4.630198 7.445030 3.782560 -2.564028 -8.259988 8.206085 -0.503641 -0.385034 0.241649 -0.309882 +-0.162891 1.584601 0.028981 -6.337712 2.417876 -18.367199 2.387673 -0.769141 -11.783619 -16.808804 2.974704 15.581153 -0.597874 0.341984 -0.045163 0.336606 -0.010386 0.182390 11.895297 8.444583 6.677911 19.618019 -5.451431 44.845573 -0.181456 0.041560 0.120532 0.063814 0.249287 0.050308 4.130446 2.249803 12.813165 -6.341510 5.110845 9.366212 -10.591797 5.717437 7.166194 -4.550250 0.315001 10.694882 13.649382 -7.465281 -9.502808 2.140804 12.233712 -6.924524 -12.244494 -5.059723 -1.525820 43.379272 -21.237177 -8.295979 0.124976 -0.288952 0.674843 1.297063 -3.571788 -4.703934 8.010023 3.486611 -2.652901 -8.476348 8.605403 -0.545584 -0.372898 0.231243 -0.293915 +-0.165646 1.587320 0.027265 -6.002626 2.455181 -17.973370 1.834383 -0.983811 -11.526038 -15.971136 2.528754 14.111326 -0.602751 0.340437 -0.036803 0.336285 -0.008456 0.180600 11.654990 8.101241 6.587115 18.879175 -5.168495 44.240204 -0.184101 0.051312 0.135291 0.064663 0.260571 0.042015 3.051892 2.191581 13.253531 -6.533848 4.771447 9.180534 -10.291628 5.312028 6.718891 -4.273476 0.849475 10.492126 14.207470 -6.976998 -9.746916 2.845061 11.944734 -6.652175 -13.332726 -5.224829 -1.703026 43.879097 -20.990297 -8.364495 0.124505 -0.311719 0.688117 1.603163 -3.485494 -4.864434 8.750508 3.673903 -2.785898 -8.287816 8.146102 -0.511701 -0.381603 0.246283 -0.306233 +-0.167123 1.590612 0.025445 -6.138146 2.120839 -17.193476 1.495634 -1.153967 -11.531704 -14.562866 2.010199 12.596170 -0.564200 0.317475 -0.030186 0.355434 0.019825 0.183202 11.821760 7.832906 6.029297 17.854931 -4.734118 43.749580 -0.192897 0.046537 0.137743 0.063975 0.252156 0.061209 2.591154 2.105130 12.956139 -6.259222 4.452549 8.945457 -9.745981 4.985147 6.536089 -4.571469 1.506478 10.368932 14.273899 -6.712031 -9.471840 3.448703 11.540046 -6.184101 -15.225222 -5.342481 -1.930704 43.757050 -21.041569 -8.442200 0.134142 -0.275313 0.666342 1.627102 -3.484644 -5.032462 9.050708 4.006345 -2.802380 -8.178758 7.832633 -0.502845 -0.366619 0.222956 -0.270694 +-0.167389 1.593951 0.024098 -6.371427 1.715281 -16.212042 1.344112 -1.182214 -11.552453 -13.644547 1.596031 10.760131 -0.553557 0.301520 -0.029561 0.378947 0.055993 0.190589 11.912018 7.518050 5.477684 17.113008 -4.432878 43.021950 -0.200891 0.036620 0.141589 0.080178 0.245286 0.068790 2.655632 1.979555 12.242448 -6.059598 4.245433 8.709062 -9.529772 4.797668 6.568608 -4.468900 1.918368 10.300252 13.968842 -6.223287 -9.409180 3.466537 11.571606 -6.341009 -16.185760 -6.324979 -1.868305 43.140266 -21.341555 -8.512464 0.137919 -0.253948 0.652056 1.538267 -4.164848 -5.698076 9.921809 4.595060 -2.894332 -8.263926 7.278342 -0.511822 -0.369502 0.201231 -0.253245 +-0.167765 1.597480 0.021578 -6.428220 0.974121 -15.499296 0.936812 -1.201844 -11.313258 -12.177716 1.160200 8.771048 -0.541815 0.290366 -0.027408 0.385098 0.072718 0.195796 11.659352 7.261486 5.164932 16.596523 -4.206794 42.218369 -0.209730 0.039482 0.143880 0.082221 0.241970 0.075982 2.573596 1.944514 12.080869 -5.894100 4.092123 8.473337 -9.288622 4.620084 6.356588 -4.217100 2.342363 10.327727 13.891860 -5.639298 -9.494050 3.559528 11.211238 -6.158870 -16.793213 -6.551462 -1.894842 42.277451 -21.691759 -8.545035 0.136256 -0.254222 0.648655 1.508747 -4.268039 -5.966607 10.860933 4.783715 -3.082765 -8.835072 6.579336 -0.500989 -0.366672 0.202077 -0.242371 +-0.167738 1.599857 0.018408 -6.892040 -0.265036 -14.707372 1.328187 -0.964429 -11.259574 -11.177370 0.888995 6.940612 -0.568827 0.312146 -0.017006 0.384319 0.065389 0.219003 11.855839 7.198880 4.539358 16.104712 -3.967600 41.788979 -0.207010 0.039457 0.152789 0.090576 0.252497 0.064945 2.552962 2.114229 11.497072 -5.267292 4.029208 8.392828 -8.548087 4.680492 6.497765 -3.776544 2.099114 10.020322 12.838959 -5.162495 -9.682754 2.628662 11.070118 -6.654572 -17.138351 -7.377963 -1.785861 42.147392 -22.057623 -8.732569 0.117987 -0.294817 0.657766 1.382665 -4.553769 -6.347175 11.398166 5.195314 -3.140609 -8.480102 5.291673 -0.409761 -0.384078 0.213121 -0.268936 +-0.167738 1.602421 0.013853 -7.016428 -1.505329 -14.080323 1.266081 -0.892498 -11.216756 -9.875610 0.647913 5.458475 -0.596244 0.324718 -0.036018 0.380901 0.056116 0.246956 11.449362 7.158514 3.991309 15.985287 -3.963041 41.578953 -0.208718 0.038813 0.142284 0.092089 0.233258 0.069335 2.184994 2.446226 11.041884 -4.768640 4.030961 8.394737 -7.787795 4.783552 6.747200 -2.993406 1.860639 10.339728 11.743679 -4.358018 -9.782350 2.318040 10.238366 -6.903628 -17.624683 -8.450515 -1.814095 41.897972 -21.614748 -8.678004 0.099946 -0.314608 0.672528 0.738849 -4.534195 -6.355844 13.447996 5.103255 -3.444934 -9.040357 4.058734 -0.338981 -0.394386 0.223943 -0.279044 +-0.168093 1.604251 0.009338 -7.032182 -2.290404 -13.168996 0.963916 -0.950240 -11.661660 -8.774489 0.446624 4.215530 -0.591520 0.324756 -0.038110 0.405520 0.077245 0.283295 11.117752 6.917726 3.290086 15.538538 -3.851339 41.050232 -0.220738 0.015278 0.131980 0.102497 0.209776 0.094493 1.436988 2.649358 10.414960 -4.232882 3.861250 8.380134 -6.796241 4.627924 7.040365 -2.038058 1.271019 9.802289 10.280865 -3.758888 -9.653845 1.583092 9.638629 -7.427457 -17.063530 -9.797557 -1.697351 40.920959 -21.239902 -8.413903 0.092666 -0.282492 0.658618 0.736511 -4.848399 -6.580435 14.807322 5.148545 -3.579633 -9.770852 4.246374 -0.421145 -0.396556 0.186414 -0.259444 +-0.167897 1.605926 0.003677 -7.171580 -3.178783 -12.647384 0.967041 -0.922395 -11.908892 -7.793193 0.286271 3.119777 -0.577536 0.297129 -0.039632 0.452639 0.135876 0.330994 10.758710 6.621087 2.877956 15.536983 -3.949389 40.555130 -0.244916 0.003562 0.132633 0.125324 0.175011 0.115623 1.386160 2.668587 9.904191 -3.783525 3.787306 8.664775 -6.183028 4.540397 7.717748 -1.120352 1.032352 9.925644 8.940594 -2.772691 -9.750923 0.745054 8.419509 -7.993518 -16.237057 -11.405189 -1.721316 39.923317 -20.612867 -8.124463 0.100576 -0.256890 0.647661 0.813248 -4.988221 -6.677959 16.553080 5.027795 -3.795870 -11.128160 5.261421 -0.631432 -0.398122 0.151377 -0.228331 +-0.167417 1.607293 -0.003169 -7.558708 -4.539864 -12.112906 1.386975 -0.769382 -12.272948 -6.737583 0.165605 2.225166 -0.576300 0.265689 -0.056850 0.509184 0.216077 0.371496 11.096457 6.453204 2.496656 14.883972 -3.657289 40.090054 -0.270425 -0.000597 0.123822 0.166345 0.140374 0.129843 1.571359 2.641582 9.193312 -3.330585 3.747882 9.214892 -5.608980 4.529363 8.885200 -0.731368 1.462196 9.633437 8.470182 -1.802790 -10.920446 0.051031 7.202787 -8.527828 -15.546686 -12.708365 -1.861073 39.913399 -20.185949 -8.141868 0.112741 -0.227957 0.639310 2.036472 -4.811833 -7.356366 16.969507 5.912110 -3.819465 -11.867729 5.299818 -0.755479 -0.403036 0.124151 -0.197492 +-0.165537 1.607645 -0.010421 -7.925178 -5.998769 -11.598991 1.845736 -0.696072 -12.929962 -5.726211 0.092250 2.030888 -0.569470 0.269086 -0.064483 0.529535 0.244756 0.386711 11.167949 6.396535 1.932726 14.707852 -3.614619 39.896099 -0.281741 -0.023981 0.115069 0.179399 0.131774 0.161120 1.726923 2.839438 8.667390 -2.650086 3.818988 9.649557 -4.748201 4.631983 9.787368 -0.131880 1.360343 9.359412 7.636412 -1.246999 -11.012045 -1.206931 5.552031 -9.087198 -14.850809 -14.288842 -1.986183 40.316353 -20.254745 -8.431984 0.094950 -0.196905 0.620114 3.140409 -4.329516 -7.363596 16.994743 6.043010 -3.810810 -12.448504 6.366045 -0.970701 -0.409567 0.097504 -0.171583 +-0.163521 1.608887 -0.017860 -8.061885 -7.845345 -11.192497 2.414356 -0.553609 -13.384150 -4.966199 0.047758 1.862995 -0.564971 0.259399 -0.069010 0.559372 0.295034 0.402097 10.879979 6.500432 1.349209 14.677989 -3.608514 39.977642 -0.297743 -0.033641 0.114398 0.203599 0.126196 0.178321 2.030623 3.112092 8.190439 -2.180508 4.059436 10.116151 -4.206339 4.850182 10.759787 0.209076 1.335603 9.352204 7.140994 -0.794189 -11.571316 -2.253699 3.974662 -9.873274 -14.183203 -16.453354 -2.139265 40.883957 -20.160650 -8.718738 0.085774 -0.183659 0.604347 4.736768 -3.786916 -7.713704 17.506262 6.563680 -3.926220 -13.609794 7.310733 -1.246494 -0.419190 0.083070 -0.148184 +-0.160862 1.609526 -0.026833 -8.046998 -9.908904 -10.881722 3.178403 -0.502334 -14.330916 -4.741286 0.060714 2.819452 -0.555648 0.238704 -0.085571 0.582981 0.340153 0.427670 10.591507 6.828996 0.462272 14.245204 -3.450773 40.673283 -0.309660 -0.039848 0.105944 0.222041 0.096309 0.195670 2.300500 3.250377 8.068968 -1.867627 4.212889 10.539503 -3.831827 4.921741 11.586883 0.605016 1.225105 9.274499 5.971914 -0.082918 -12.144478 -3.228095 2.257882 -10.338022 -12.876457 -17.771721 -2.434823 41.225170 -19.998362 -8.844715 0.078872 -0.166713 0.585088 5.875173 -2.771969 -7.843284 18.682720 7.382069 -4.064976 -14.685915 9.481850 -1.764936 -0.417760 0.068578 -0.117976 +-0.158197 1.608048 -0.034829 -7.975517 -12.322988 -10.388718 4.410126 -0.496662 -16.022293 -5.157393 0.167969 5.244440 -0.579617 0.243325 -0.095244 0.608477 0.373700 0.450725 10.490107 7.335312 -0.667436 13.604923 -3.189647 41.799717 -0.313874 -0.043234 0.106417 0.251317 0.093546 0.192373 2.630287 3.390921 7.611517 -1.650590 4.381994 10.853812 -3.557493 5.043419 12.445291 0.630615 1.692654 9.087181 5.536309 0.514806 -12.791163 -3.279937 1.171122 -10.690102 -12.859802 -19.157557 -2.569380 41.454315 -19.932009 -9.059175 0.069723 -0.175345 0.584963 6.833838 -1.895792 -8.632036 19.644712 9.359219 -4.074486 -15.135581 9.993315 -2.034602 -0.435857 0.065232 -0.122267 +-0.155255 1.606933 -0.042436 -7.904150 -14.910521 -9.976284 6.132611 -0.396099 -17.974174 -6.482966 0.442776 8.747579 -0.607337 0.263478 -0.093182 0.624604 0.389966 0.463768 10.625152 7.725592 -1.360209 12.235993 -2.568690 42.515491 -0.318295 -0.057561 0.101954 0.279279 0.105677 0.188364 3.059854 3.420854 7.726108 -1.554179 4.566720 10.980680 -3.558352 5.161422 12.777025 0.538786 2.560840 8.562731 5.153638 1.251932 -13.002645 -3.437396 0.448450 -11.197196 -12.642103 -20.749588 -2.599976 41.375114 -19.952688 -9.183331 0.061028 -0.179509 0.588692 8.093701 -1.192280 -9.645938 20.499111 11.572705 -4.045588 -15.529764 10.370626 -2.277901 -0.452976 0.052024 -0.142714 +-0.152083 1.606483 -0.051784 -7.567080 -17.146141 -10.049934 8.152706 -0.344608 -20.190386 -8.707283 1.042604 13.983326 -0.615083 0.277083 -0.103284 0.639628 0.414488 0.466801 10.462480 7.969729 -1.951233 11.097867 -2.149283 43.216347 -0.323782 -0.070184 0.094681 0.297566 0.114381 0.205735 3.036006 3.326841 8.200000 -1.485536 4.555881 11.291413 -3.447955 5.101433 13.248490 0.252534 3.551512 8.317461 5.070338 1.925607 -13.335642 -3.601868 -0.670601 -11.612844 -12.342030 -22.204805 -2.806740 42.235493 -19.971783 -9.538338 0.040605 -0.167086 0.578094 9.817141 -0.125658 -10.633718 20.723526 13.895201 -3.950775 -15.358629 10.303440 -2.375078 -0.464874 0.044683 -0.132438 +-0.148766 1.606644 -0.060721 -7.386243 -19.553471 -10.331503 10.622969 -0.118184 -22.140608 -11.675226 2.077783 19.915577 -0.634292 0.271717 -0.123380 0.676542 0.458746 0.491102 10.640180 8.157366 -2.223415 9.724277 -1.597904 43.703949 -0.343389 -0.068934 0.086461 0.325110 0.094941 0.217119 3.201195 3.166709 9.122756 -1.395641 4.617937 11.632595 -3.419672 5.162120 13.598430 -0.601054 4.760435 8.004275 4.673171 2.721645 -14.529936 -3.788130 -1.876887 -11.856270 -12.363192 -23.442291 -2.995182 43.647419 -21.224220 -10.523670 0.046908 -0.158676 0.591816 11.626849 0.905302 -11.395967 20.860348 15.695547 -3.925965 -15.010798 10.483617 -2.454436 -0.477184 0.041214 -0.122190 +-0.143809 1.608121 -0.069850 -6.752759 -21.915737 -10.967949 12.350435 -0.150520 -23.741671 -14.259523 3.365441 25.961500 -0.678074 0.287212 -0.137323 0.690565 0.467266 0.517168 10.132088 8.252432 -2.336057 8.676771 -1.232475 44.009972 -0.347024 -0.061635 0.087100 0.345248 0.089695 0.206591 2.914943 3.179664 10.192928 -1.256652 4.672759 12.059586 -3.178120 5.233828 13.956268 -0.853625 5.446908 7.955490 4.222835 3.458758 -15.352881 -4.715968 -3.841550 -12.430705 -11.510841 -25.186232 -3.382696 44.712788 -21.933510 -11.247051 0.039736 -0.191908 0.619013 13.512440 2.369993 -11.666486 20.429726 17.129457 -3.930598 -14.336025 11.806147 -2.659317 -0.500018 0.058389 -0.146900 +-0.137896 1.609854 -0.077652 -5.823012 -24.055769 -11.668018 13.779216 -0.294715 -25.182566 -16.967180 4.977308 31.880217 -0.714081 0.310344 -0.143757 0.693127 0.461524 0.529300 9.403065 8.282658 -2.397833 7.210505 -0.694751 44.228523 -0.354469 -0.063269 0.080190 0.356486 0.095099 0.204466 2.438852 3.261651 10.994482 -1.147426 4.692928 12.445843 -2.880855 5.274017 14.316557 -0.927538 6.005843 8.148997 3.969277 4.118996 -15.678823 -5.316980 -5.580879 -12.721301 -11.133784 -26.776617 -3.605953 45.565617 -24.253584 -12.633064 0.031767 -0.214452 0.645872 14.898627 3.831013 -11.785723 20.248457 18.586010 -3.900503 -13.525084 13.505468 -2.873523 -0.516495 0.068957 -0.173095 +-0.130867 1.612166 -0.084851 -4.875965 -25.981440 -12.199566 15.083968 -0.514531 -26.784744 -19.957155 6.923659 37.548882 -0.696912 0.291710 -0.163743 0.726395 0.490140 0.574809 8.477742 8.146724 -2.492680 5.551526 -0.122520 43.949738 -0.380759 -0.072170 0.057762 0.357321 0.044334 0.242526 2.158102 3.111463 11.672981 -1.094743 4.592554 12.783085 -2.704907 5.140908 14.687515 -0.885196 6.413784 8.514328 2.674360 5.196745 -15.926392 -5.635658 -7.048832 -12.588388 -11.202438 -27.804913 -3.808431 46.915981 -27.456287 -14.557017 0.040479 -0.164475 0.645094 15.019759 5.338651 -11.741925 21.237589 20.218506 -3.618650 -12.086660 15.796215 -3.075075 -0.504326 0.037830 -0.132508 +-0.124569 1.615139 -0.091197 -3.793108 -27.912590 -12.866165 16.083836 -0.745651 -27.852245 -22.382816 8.920979 42.601986 -0.718903 0.294819 -0.176465 0.746321 0.501490 0.619812 7.491395 7.949832 -2.409604 3.972824 0.429350 43.304806 -0.394515 -0.062772 0.052734 0.364812 0.020979 0.248542 1.629811 3.106494 12.275188 -1.131571 4.522753 13.153068 -2.561482 5.073355 15.087170 -0.799961 6.805485 8.702858 1.749366 6.156599 -16.791067 -5.698677 -8.449005 -12.665860 -11.313059 -29.085314 -3.926397 47.764103 -31.461718 -16.861189 0.037331 -0.182031 0.668726 15.449378 7.066398 -11.848394 22.377285 22.042166 -3.412206 -10.939917 17.745220 -3.241103 -0.512922 0.047209 -0.136056 +-0.118005 1.619715 -0.097560 -2.591225 -29.314501 -13.581259 16.482523 -1.302634 -28.535030 -24.110374 10.683502 47.065063 -0.736296 0.261939 -0.213807 0.795541 0.563422 0.675948 6.338984 7.540351 -2.273709 2.772543 0.743658 42.251862 -0.422817 -0.045223 0.036012 0.396663 -0.039910 0.254975 0.778419 3.097676 12.655063 -1.149864 4.316111 13.703722 -2.193244 4.838350 15.886477 -0.761904 7.446394 9.015975 0.933794 7.305212 -18.504755 -5.104967 -10.050616 -12.855439 -12.143413 -30.883242 -4.121560 49.404926 -34.883862 -19.457796 0.056960 -0.174758 0.689441 15.945306 8.780711 -12.205355 23.646778 24.080421 -3.216335 -10.003852 20.238850 -3.506859 -0.516217 0.046552 -0.115759 +-0.110987 1.624715 -0.103259 -1.339180 -31.126358 -13.841406 16.718086 -1.643628 -28.929125 -25.513557 12.321860 50.518543 -0.757916 0.253705 -0.245401 0.835283 0.611165 0.711364 5.128810 7.305420 -2.759619 1.290884 1.174620 41.272972 -0.452961 -0.043838 0.024794 0.418304 -0.071846 0.282597 0.033580 3.332775 12.349244 -1.225869 4.260793 14.080084 -1.894949 4.776854 16.723743 -0.553547 7.925304 9.409863 0.367788 8.212152 -20.010220 -3.718606 -11.724162 -12.963178 -13.988247 -33.032402 -3.971232 50.071518 -38.298206 -21.960804 0.056370 -0.167856 0.713036 15.872032 10.391656 -12.292434 25.809473 25.670246 -2.896585 -9.064837 22.811100 -3.769757 -0.532793 0.050022 -0.095163 +-0.104358 1.629916 -0.107108 -0.340732 -33.205326 -13.578669 17.083504 -1.833149 -29.206976 -26.589983 13.897703 53.715229 -0.750196 0.241307 -0.253408 0.863857 0.651652 0.735837 4.311136 7.021362 -3.433456 -0.456643 1.696122 39.838036 -0.473439 -0.051012 0.014963 0.434047 -0.087968 0.303216 -0.223134 3.382552 11.446911 -1.400740 4.257839 14.186185 -1.932330 4.763020 17.431128 -0.462293 8.599119 10.001927 -0.113684 9.099281 -20.279131 -2.714864 -13.559663 -13.001805 -16.253441 -35.308578 -3.677524 50.599213 -40.458481 -23.806383 0.056001 -0.147974 0.707228 16.279284 11.652099 -12.259357 28.209742 26.976212 -2.448616 -7.462887 26.771383 -4.023708 -0.531461 0.033484 -0.071842 +-0.098268 1.635540 -0.109911 0.095756 -34.932892 -12.928908 17.427895 -2.150764 -29.353802 -26.683149 14.960142 56.886841 -0.775600 0.247563 -0.266523 0.883510 0.678218 0.748740 3.784520 6.614614 -4.137233 -1.790574 1.957662 37.979965 -0.477766 -0.066562 0.013452 0.461028 -0.090299 0.304044 -0.407725 3.278637 10.209656 -1.420716 4.060065 14.271961 -1.720481 4.602381 18.262276 -0.373787 9.429996 10.366678 -0.548301 10.009103 -20.323969 -1.789331 -15.031480 -12.958756 -19.087252 -37.659576 -2.932446 52.041370 -43.372192 -26.582546 0.045365 -0.143714 0.707814 16.690390 12.616516 -12.644693 30.147425 28.905918 -1.605877 -4.369041 29.553823 -3.560164 -0.552401 0.020006 -0.078770 +-0.091888 1.641570 -0.112264 0.575041 -36.718918 -12.161089 17.424295 -2.511493 -29.285671 -26.184809 15.767151 60.096672 -0.797658 0.267854 -0.271517 0.892794 0.684860 0.776970 3.201453 6.249115 -5.004308 -2.994241 2.138109 36.112057 -0.481794 -0.083401 0.002949 0.477859 -0.092093 0.310422 -0.648649 3.246926 8.861405 -1.392490 3.866477 14.333423 -1.413709 4.428638 19.104046 -0.103472 9.798611 10.709154 -1.598368 10.882658 -20.192261 -1.001857 -16.252991 -13.005049 -21.506372 -40.416660 -1.777879 51.999561 -46.621296 -28.735558 0.023997 -0.147788 0.705759 16.538864 13.521867 -13.129786 32.457268 31.055237 -0.443250 -1.188440 31.425295 -2.842073 -0.564919 0.006470 -0.089682 +-0.085472 1.647810 -0.114437 1.149869 -38.550419 -11.313907 16.880774 -2.879326 -28.938185 -25.122160 16.001858 62.530167 -0.800713 0.277662 -0.269268 0.916811 0.714510 0.797108 2.501112 5.940675 -6.077391 -4.076771 2.259006 34.245506 -0.493576 -0.108549 0.004034 0.497184 -0.087258 0.332298 -0.720109 3.121574 7.480189 -1.547512 3.663750 14.362247 -1.480661 4.174148 19.906746 0.302679 10.420553 10.867702 -2.370678 11.809701 -20.080130 0.080329 -17.179731 -12.855272 -23.805977 -42.529972 -0.519510 52.495544 -50.011547 -31.235239 0.005652 -0.132177 0.693393 16.178818 14.208493 -13.697104 35.824646 33.236565 1.004251 1.353943 33.600208 -2.300271 -0.579396 -0.019572 -0.080469 +-0.078480 1.653010 -0.116195 1.207361 -40.712685 -9.825318 16.680843 -2.806930 -28.324362 -24.440128 16.056738 63.384495 -0.809462 0.299104 -0.257650 0.937312 0.742363 0.820825 2.239747 5.904922 -7.614280 -4.972218 2.391983 32.895176 -0.493000 -0.150027 0.012597 0.524501 -0.069347 0.347535 -0.265043 2.983308 5.719175 -1.626428 3.519567 14.301897 -1.620521 3.922987 20.849640 0.737091 11.077666 10.400050 -3.793144 12.827089 -19.545074 1.880812 -17.590981 -12.729789 -26.810213 -44.778999 1.364611 51.941055 -52.983013 -32.928169 -0.031328 -0.121367 0.661322 15.189126 14.529465 -14.530971 39.804871 35.688026 3.097610 3.818692 35.366108 -1.687046 -0.603707 -0.059245 -0.080730 +-0.072184 1.657377 -0.118193 1.385782 -42.416286 -8.287569 16.030611 -2.871326 -27.688341 -23.520807 15.715948 63.505116 -0.816973 0.334522 -0.244307 0.918547 0.731033 0.812317 1.770311 5.845553 -9.166382 -5.213834 2.293669 31.509369 -0.465045 -0.197759 0.024919 0.536055 -0.029868 0.349608 -0.226790 2.996415 3.967878 -1.667355 3.354706 14.080020 -1.546612 3.628032 21.509533 1.374760 11.638236 9.989178 -4.807969 13.829537 -18.186932 3.542742 -17.832680 -12.688412 -30.009165 -47.536533 4.054867 49.613194 -55.754639 -33.152542 -0.088418 -0.114964 0.612616 14.385589 14.381516 -15.278356 44.007767 37.964916 5.674764 6.515521 37.070274 -0.834909 -0.626331 -0.091569 -0.096701 +-0.064898 1.661765 -0.120543 1.130265 -44.115372 -6.712142 15.345182 -2.838210 -26.461418 -22.331165 14.909662 62.758747 -0.841119 0.368879 -0.252606 0.925117 0.741987 0.825588 1.790442 5.890166 -10.511384 -5.616301 2.297547 30.119736 -0.455930 -0.249934 0.017280 0.560090 -0.013790 0.371284 0.169494 2.961426 2.498317 -1.640429 3.221840 14.007882 -1.540515 3.396683 22.322811 2.146389 12.141342 9.480089 -5.753473 14.751775 -17.673609 4.438820 -18.124252 -12.933593 -33.573544 -50.742359 7.278052 46.982243 -57.752182 -32.590134 -0.139609 -0.092477 0.581458 13.425660 14.140767 -16.370064 47.970409 40.470715 8.781833 9.949854 38.282684 0.500140 -0.655403 -0.131579 -0.099691 +-0.058692 1.666194 -0.122879 0.943071 -45.379837 -5.602497 14.113273 -2.820513 -24.223135 -20.786242 13.536302 60.696419 -0.859730 0.397450 -0.247367 0.932780 0.759700 0.837800 2.014765 5.937261 -11.284970 -6.085701 2.381442 28.709223 -0.454839 -0.281371 0.015891 0.588520 0.009324 0.379726 0.527073 2.901817 1.245380 -1.638134 3.063291 14.126240 -1.628127 3.101448 23.195272 2.950866 12.442166 9.319098 -6.279268 15.430611 -17.397217 5.542769 -18.514566 -13.119287 -36.356892 -53.352074 10.368772 44.535427 -59.931213 -32.017178 -0.176244 -0.095668 0.560239 11.997142 14.337797 -17.430725 51.889919 42.790203 12.079476 13.062656 39.001709 1.774395 -0.677188 -0.153680 -0.112580 +-0.053305 1.670432 -0.124906 0.990812 -45.974033 -4.750149 12.411217 -2.871249 -21.573986 -18.896820 11.765480 57.618347 -0.887348 0.422795 -0.257062 0.940096 0.778581 0.861149 1.785346 5.759792 -11.596251 -5.834585 2.168309 26.426180 -0.446658 -0.318423 0.009561 0.618595 0.014775 0.388418 0.441593 2.873629 -0.103128 -1.561562 2.784042 14.372162 -1.410620 2.633698 24.328606 3.489204 12.555588 8.856671 -7.603151 16.014280 -17.478388 7.586046 -18.413704 -13.385505 -40.309376 -55.989292 14.399580 42.882065 -62.046642 -31.940090 -0.222067 -0.095247 0.531140 10.866857 14.158597 -18.542252 56.235340 44.844139 15.544897 15.105147 40.132389 2.681415 -0.703506 -0.179786 -0.119619 +-0.048060 1.672174 -0.125240 1.067987 -46.165146 -3.752481 10.301759 -2.922394 -19.107533 -16.376680 9.702046 54.235184 -0.921379 0.473185 -0.256851 0.918703 0.760504 0.852552 1.150216 5.573877 -11.928140 -4.950298 1.803252 24.475002 -0.424977 -0.365920 0.012501 0.632206 0.051694 0.397874 0.642000 2.780384 -1.415163 -1.532778 2.485471 14.412150 -1.429190 2.160666 25.085745 3.981361 12.783957 8.131550 -8.602957 16.508448 -17.115501 9.339681 -18.554905 -13.560049 -44.180595 -58.379166 18.957266 40.880371 -64.374359 -31.448904 -0.286232 -0.103685 0.503654 10.254326 13.675895 -19.172379 60.629196 46.249130 18.838848 15.949635 41.748264 3.152300 -0.739694 -0.196867 -0.143546 +-0.043900 1.670897 -0.125284 1.001006 -45.875393 -2.444858 8.380536 -2.904169 -16.533070 -13.964335 7.628642 49.627232 -0.939751 0.546710 -0.238290 0.874880 0.705128 0.829222 0.590914 5.385997 -12.298265 -3.988642 1.445380 22.669090 -0.396043 -0.415146 0.015164 0.622019 0.114329 0.417053 0.537711 2.648932 -2.827901 -1.372797 2.059048 14.222775 -1.103769 1.555918 25.482716 4.664692 12.824980 7.398415 -9.081342 16.854027 -16.197807 11.205435 -18.278149 -13.618406 -49.798798 -60.747002 25.021957 39.232407 -65.726738 -30.701593 -0.363890 -0.110333 0.471449 9.617601 12.529979 -19.236971 64.963943 47.001232 22.184855 17.124798 45.165901 4.042819 -0.767472 -0.210164 -0.170605 +-0.038835 1.668873 -0.124029 -0.051792 -45.021545 -0.811618 6.972673 -2.898533 -13.583907 -11.232874 5.433945 44.436188 -0.947751 0.593338 -0.225656 0.858661 0.677015 0.822131 0.704947 5.046429 -11.901040 -3.123290 1.088188 20.078775 -0.379908 -0.453130 0.015702 0.619103 0.149058 0.435917 1.769720 2.184735 -4.041565 -1.098175 1.514576 14.195010 -1.159758 0.891981 26.017015 5.077238 12.591658 6.953607 -9.457038 16.804754 -15.542446 12.277021 -18.676941 -13.749967 -55.035603 -62.946720 31.018974 36.727680 -66.060059 -28.745161 -0.408735 -0.099008 0.446163 8.671971 11.541602 -18.997971 68.022797 47.576248 24.943020 17.899282 49.754269 5.004252 -0.784801 -0.233018 -0.180115 +-0.033778 1.665825 -0.122855 -1.644150 -45.003338 1.184331 6.261551 -2.294415 -9.887939 -8.866342 3.690083 37.367271 -0.964685 0.627722 -0.227996 0.859038 0.670105 0.837439 1.428151 4.887099 -11.612030 -2.767780 0.915274 17.491590 -0.377034 -0.487039 0.002939 0.627601 0.157720 0.458584 3.198275 1.851826 -5.349900 -0.718613 1.082784 14.195268 -1.134445 0.412229 26.654737 5.591552 12.342720 6.582157 -10.255214 16.826820 -15.509573 13.337549 -19.134537 -14.107331 -61.931351 -64.535240 37.758808 32.681770 -65.366150 -25.521833 -0.444237 -0.087423 0.430981 6.535807 10.997141 -18.706129 70.987419 48.440365 28.019770 17.424387 54.716484 5.401154 -0.800673 -0.257395 -0.182369 +-0.028408 1.661072 -0.121875 -3.386826 -44.952564 3.472615 5.986441 -1.822455 -6.303314 -6.960638 2.314524 29.584284 -1.021682 0.705801 -0.240431 0.824908 0.614910 0.856751 2.116085 4.837297 -11.882384 -2.382343 0.715351 15.446751 -0.354885 -0.537739 -0.014611 0.628387 0.178956 0.479975 4.597176 1.368080 -6.635199 -0.448872 0.443305 14.086830 -1.067970 -0.256211 27.268509 6.369960 12.367743 5.941165 -12.047565 17.573902 -15.524791 13.117796 -18.458702 -14.757030 -69.187172 -66.160110 45.245892 28.394566 -62.623966 -21.438742 -0.525574 -0.105639 0.423171 5.044918 9.783927 -18.814711 75.794197 49.609234 32.938976 16.483166 57.893078 5.489139 -0.838915 -0.269500 -0.219826 +-0.021600 1.656338 -0.121351 -5.287672 -44.062309 5.598478 5.934884 -1.503548 -3.159291 -4.732643 1.173690 22.743078 -1.046881 0.743444 -0.243968 0.817461 0.603384 0.873714 2.503117 4.763614 -12.120962 -1.031927 0.409366 13.689591 -0.344708 -0.573331 -0.031582 0.643150 0.189425 0.490796 5.780529 0.611710 -7.560449 0.075164 -0.464842 14.042303 -0.558760 -1.223659 27.760399 6.800697 12.390827 5.251103 -12.960823 17.841030 -15.378655 12.954215 -18.894741 -15.182395 -75.067116 -67.311241 51.108837 26.665586 -59.707905 -19.447872 -0.566331 -0.102286 0.404490 3.816491 9.591886 -18.812263 76.916672 51.492241 36.605915 14.393044 61.566483 5.152966 -0.854445 -0.294575 -0.235665 +-0.015629 1.653518 -0.121831 -6.413427 -43.556396 6.810956 5.758468 -1.113977 -0.148297 -2.971282 0.508582 16.795404 -1.093626 0.785855 -0.248032 0.819832 0.594512 0.902399 2.577854 4.773362 -12.325134 0.070174 0.216528 12.493884 -0.339645 -0.594409 -0.032351 0.662205 0.202237 0.492637 5.809247 -0.016117 -8.234126 0.608593 -1.360903 14.243618 0.220945 -2.177500 28.592331 7.149487 12.864558 4.956171 -13.939013 18.381048 -15.768514 13.005028 -19.239588 -15.432404 -79.147278 -68.317902 55.433243 27.881001 -57.690834 -19.729433 -0.602868 -0.130434 0.413066 3.223720 9.842345 -18.926743 77.674423 54.088097 40.439648 8.925491 64.015701 2.446074 -0.885967 -0.297864 -0.267894 +-0.009511 1.652362 -0.122952 -6.929716 -43.515507 7.495130 5.519564 -0.751940 2.094325 -2.186687 0.225381 12.160829 -1.099132 0.797103 -0.248010 0.833374 0.600344 0.919265 2.269024 4.885890 -12.946620 0.674467 0.160533 12.058118 -0.338613 -0.611228 -0.037628 0.672390 0.200799 0.500881 4.820080 -0.626984 -8.584022 1.205361 -2.215324 14.415998 1.435496 -3.089177 29.269243 7.063026 13.389710 5.056177 -14.251827 18.610365 -15.521502 12.593791 -19.622505 -15.151218 -81.647087 -68.300377 57.171257 29.932955 -57.071125 -21.068310 -0.609943 -0.114523 0.404766 3.399432 10.797357 -18.948591 77.225815 57.010139 43.767872 3.393359 65.383881 -0.394404 -0.891226 -0.321322 -0.266715 +-0.003946 1.653317 -0.123815 -6.885468 -44.663975 7.695644 5.187340 -0.291453 3.890344 -2.541987 0.223339 8.532451 -1.117140 0.801245 -0.267242 0.834591 0.594175 0.939182 1.802652 5.030499 -13.570665 0.711658 0.187010 11.936299 -0.346661 -0.600188 -0.049527 0.668507 0.178776 0.506545 3.192840 -0.801445 -8.758616 1.720175 -2.692236 14.665085 2.629276 -3.557991 29.969830 7.070270 13.811339 5.552103 -14.908219 18.893860 -16.259546 11.855654 -20.295658 -14.865569 -83.178001 -67.945152 57.457966 31.336916 -56.571087 -22.084843 -0.612736 -0.128142 0.425917 3.816317 12.269733 -18.680784 76.948586 59.026657 45.520245 -1.865840 65.493958 -3.497915 -0.894533 -0.304211 -0.267270 +0.001761 1.655233 -0.124346 -6.579142 -46.234596 8.046661 4.656163 0.081303 4.554468 -3.113094 0.278055 6.232237 -1.127210 0.823834 -0.263681 0.814377 0.578803 0.926491 1.274173 5.147223 -14.523710 0.477030 0.218763 11.626559 -0.341266 -0.602457 -0.036708 0.660191 0.204042 0.512253 1.746988 -0.730604 -8.866467 2.042861 -2.838937 14.719042 3.544269 -3.740258 30.349012 7.169073 13.989533 5.682276 -15.478142 19.064768 -16.509010 10.911860 -20.253353 -14.677760 -86.460815 -67.311989 59.288643 31.654510 -56.379906 -22.451283 -0.646311 -0.160174 0.423832 4.626831 13.185744 -18.693058 78.480377 60.003563 47.908428 -2.020316 64.956230 -3.200493 -0.911410 -0.279415 -0.275454 +0.009333 1.657620 -0.124338 -6.472995 -47.341961 8.576585 4.205546 0.213702 4.044258 -3.587841 0.330169 5.425428 -1.126349 0.809526 -0.264870 0.823958 0.597954 0.940228 0.849821 5.131092 -15.312308 0.103994 0.243861 11.041361 -0.350120 -0.585546 -0.033320 0.666741 0.193453 0.505179 1.429579 -0.797612 -8.716608 2.139693 -2.915079 14.693138 3.740379 -3.784433 30.401634 7.043937 14.150191 5.797968 -15.883853 19.073729 -17.120924 10.346807 -20.345032 -14.659486 -89.258263 -66.284660 60.292755 31.098484 -57.209187 -22.589682 -0.637520 -0.180510 0.429691 4.761446 13.555538 -18.738310 80.210358 60.019650 49.298573 -1.498041 65.180580 -2.789700 -0.907889 -0.264516 -0.272584 +0.017558 1.660437 -0.124030 -6.268582 -47.881737 8.854125 3.464362 0.107938 3.181649 -3.432943 0.272249 5.332133 -1.106604 0.773785 -0.273964 0.839897 0.616288 0.956771 0.406110 4.787937 -15.489355 -0.344432 0.191002 9.758792 -0.364568 -0.562914 -0.036360 0.660200 0.154695 0.506582 1.649841 -0.911833 -8.468642 2.077375 -2.954264 14.714210 3.544783 -3.753711 30.269840 6.802404 14.052200 6.278881 -16.291964 18.974131 -17.704203 10.014317 -20.816105 -14.630104 -90.282364 -65.453041 59.759747 30.129396 -57.729111 -22.358538 -0.604684 -0.171517 0.439503 4.535153 13.596904 -18.583553 80.765663 59.084404 48.395939 -0.569358 66.139709 -2.427980 -0.887886 -0.259113 -0.248803 +0.024932 1.661747 -0.123666 -5.774625 -48.506908 9.085707 2.614579 -0.050837 2.036926 -3.463555 0.237043 5.522469 -1.063135 0.737336 -0.262337 0.850471 0.632353 0.959339 -0.112639 4.358645 -15.707052 -0.908793 0.130067 8.416176 -0.378207 -0.551583 -0.034225 0.647481 0.134903 0.513983 1.871063 -1.086206 -8.289625 1.702105 -2.926984 14.552122 2.979524 -3.672489 29.695045 6.647815 14.124891 6.812924 -16.372850 19.085279 -17.664579 10.502190 -20.661245 -15.201012 -90.221375 -64.278061 58.313332 25.227022 -58.710171 -19.633062 -0.572811 -0.147708 0.432977 4.751923 12.818569 -18.327557 82.402374 57.111286 47.400349 2.960052 67.184059 -0.406084 -0.858947 -0.269306 -0.219772 +0.031043 1.661386 -0.123611 -5.377493 -49.274864 9.322409 2.131159 -0.111259 1.092507 -3.976084 0.309012 5.863755 -1.025827 0.721481 -0.249544 0.836927 0.618318 0.944057 -0.604539 4.050637 -15.948699 -1.127587 0.053991 7.163304 -0.375311 -0.548874 -0.028757 0.622785 0.134066 0.520451 1.838435 -0.905329 -8.154225 1.573599 -2.645225 14.307020 2.816289 -3.331951 29.011986 6.591502 13.913296 7.036322 -16.348001 19.110130 -17.179478 10.881913 -21.098469 -15.744227 -90.360291 -63.713367 57.684105 20.660542 -58.324493 -16.694958 -0.562860 -0.128252 0.419226 5.057077 12.476528 -17.941404 80.768524 55.652431 44.213364 4.705201 67.917755 0.458741 -0.837151 -0.274073 -0.201588 +0.036447 1.659650 -0.122785 -5.281791 -49.636047 9.618383 1.888535 -0.184299 0.406428 -4.302277 0.337856 6.122027 -0.965617 0.679858 -0.243522 0.837380 0.631183 0.925393 -1.007041 3.752043 -15.998919 -0.935912 -0.043269 5.980521 -0.379512 -0.550163 -0.028129 0.601935 0.117710 0.537046 2.434662 -0.888802 -8.131194 1.270829 -2.427172 14.036299 2.224445 -3.116610 28.279497 6.660919 13.862987 7.469388 -16.024477 19.298777 -16.575005 11.597098 -21.390266 -16.256451 -89.184990 -63.032146 55.885300 15.832952 -58.088898 -13.656969 -0.540590 -0.075053 0.390487 4.910627 12.040683 -17.521587 80.955994 53.802822 41.872486 6.294748 67.669899 0.963872 -0.804616 -0.296598 -0.155846 +0.041660 1.657940 -0.121614 -5.519197 -49.605152 10.036591 1.999714 -0.232633 -0.278105 -4.897634 0.411094 6.522964 -0.919088 0.621024 -0.238613 0.845250 0.649124 0.914100 -1.107759 3.589437 -16.049902 -0.967949 -0.086224 5.304147 -0.391172 -0.526863 -0.020104 0.585343 0.085673 0.531035 3.086859 -0.884777 -7.949316 1.180746 -2.246736 13.757518 1.977015 -2.857955 27.356874 6.458653 13.692559 8.186945 -15.852287 19.265665 -16.475861 11.546116 -21.749334 -16.434526 -88.645180 -61.485912 53.443806 9.938176 -58.401215 -10.271932 -0.486820 -0.052285 0.393372 4.690033 11.603480 -17.109907 79.806252 51.520981 38.171230 10.749758 67.738121 3.542996 -0.770098 -0.298185 -0.126424 +0.046110 1.655880 -0.121511 -5.346190 -49.173733 10.048797 1.917262 -0.353518 -1.104606 -5.477421 0.511152 7.359171 -0.877000 0.594389 -0.218418 0.806916 0.605841 0.877691 -1.339873 3.501498 -16.382124 -1.248385 -0.097400 5.231574 -0.380703 -0.490192 -0.005740 0.540049 0.090139 0.509067 3.116958 -0.870246 -7.545007 1.188169 -2.145591 13.448503 2.106918 -2.618797 26.097023 6.284989 13.591178 8.933543 -15.135174 19.193541 -15.749553 10.937140 -22.790348 -16.320213 -86.314384 -59.476040 48.946125 2.471347 -58.989697 -6.025545 -0.455803 -0.067012 0.401371 4.853712 11.953414 -16.529488 76.978729 49.035892 33.332592 18.638786 67.594078 8.579813 -0.733749 -0.265663 -0.126498 +0.050773 1.653659 -0.121374 -5.391473 -48.710621 10.250090 2.027637 -0.505501 -2.038249 -5.863139 0.586008 8.369407 -0.852626 0.554730 -0.221162 0.795097 0.592508 0.861273 -1.326099 3.550413 -16.915388 -1.715844 -0.076003 5.523638 -0.387742 -0.455855 -0.005836 0.513414 0.062845 0.496346 3.203425 -0.794127 -7.074530 1.232844 -1.989836 13.110909 2.322623 -2.342943 24.812037 6.321569 13.192057 9.625464 -14.632455 18.971157 -15.732099 10.149632 -23.322330 -16.620564 -85.172020 -57.131077 45.054642 -7.118002 -57.804947 -0.524927 -0.409888 -0.070343 0.426631 4.889943 12.002140 -16.083113 75.060051 46.177998 28.621929 24.905453 65.980881 11.947321 -0.704013 -0.241795 -0.117339 +0.055112 1.649976 -0.120476 -5.293961 -47.953358 10.497688 2.154961 -0.692010 -3.131081 -6.283369 0.665802 9.389389 -0.817303 0.533133 -0.208708 0.768745 0.558134 0.836564 -1.495044 3.673358 -17.859495 -2.161002 -0.043866 6.412472 -0.385248 -0.428509 0.003951 0.471933 0.059712 0.490823 3.366324 -0.841835 -6.683656 1.144231 -1.938038 12.597975 2.447562 -2.237129 23.291262 6.324219 12.568447 10.208038 -14.122289 18.686655 -15.177151 9.719419 -22.911745 -16.879511 -84.739273 -54.613197 41.959877 -16.604340 -55.848263 4.634556 -0.385034 -0.075838 0.437635 5.108632 11.309784 -15.649613 74.939606 42.879398 24.665571 29.090019 62.523048 13.160874 -0.676342 -0.216955 -0.108009 +0.059757 1.647180 -0.118633 -5.302130 -46.612427 10.746910 2.308228 -1.000390 -4.335661 -6.614056 0.711387 10.700800 -0.781744 0.506835 -0.202375 0.744644 0.521985 0.822127 -1.789793 3.734812 -18.708181 -2.280045 -0.040708 7.495085 -0.380034 -0.410630 0.005870 0.431718 0.040083 0.487112 3.765532 -0.969738 -6.342091 1.184046 -1.964829 12.088542 2.803968 -2.239013 21.910166 6.255766 11.739151 10.689406 -13.973336 18.508034 -14.365384 8.812634 -22.665823 -16.757832 -85.319992 -52.447044 39.642731 -20.552885 -51.679966 5.998483 -0.357530 -0.064613 0.443843 5.475376 10.360473 -15.217603 74.407814 39.593071 20.598122 31.128378 58.222523 12.645628 -0.645197 -0.209855 -0.095934 +0.065420 1.644949 -0.117154 -5.427540 -44.333920 10.843918 2.756126 -1.444317 -5.672246 -6.777926 0.705462 12.394989 -0.766476 0.478938 -0.202541 0.730849 0.495727 0.827638 -2.056098 3.820168 -19.514698 -2.203588 -0.050312 9.261275 -0.378896 -0.384161 0.010805 0.402850 0.009135 0.473366 4.468591 -1.445414 -5.715921 1.308857 -2.312465 11.729095 3.126073 -2.509551 20.640215 6.035393 11.112825 10.824742 -14.353500 18.398081 -14.218781 7.004889 -23.173594 -16.541067 -84.018723 -50.534496 36.170940 -22.095377 -46.706219 5.857731 -0.326100 -0.075654 0.465094 5.811011 10.063232 -15.150534 72.621315 37.037312 16.759340 31.535904 53.127449 11.101893 -0.622997 -0.192670 -0.095404 +0.072045 1.642078 -0.116980 -4.652223 -40.580994 10.249565 2.977822 -2.213176 -7.686277 -7.158882 0.688755 14.940269 -0.744488 0.439522 -0.197998 0.749786 0.521325 0.835127 -3.285902 3.518858 -20.242908 -1.598179 -0.160115 11.265115 -0.389100 -0.361604 0.016573 0.405462 -0.011673 0.460464 4.526140 -2.320081 -4.996784 1.293780 -3.029412 11.429747 3.473411 -3.203922 19.562258 6.089178 10.789883 10.601437 -13.639040 18.064959 -14.178087 6.084700 -23.231354 -16.491701 -82.813477 -48.533394 32.645943 -22.093161 -41.960434 4.915391 -0.285835 -0.071272 0.472608 5.753143 9.326966 -15.474208 70.718216 35.166328 14.048994 31.147116 48.390144 9.502047 -0.603989 -0.192389 -0.083363 +0.078329 1.639481 -0.115677 -4.039166 -37.380020 9.506545 2.927914 -2.938613 -9.052074 -7.279142 0.624617 17.243574 -0.733843 0.413355 -0.193854 0.753221 0.523080 0.833917 -4.374572 3.232094 -20.898985 -1.082501 -0.312375 13.822042 -0.401555 -0.326908 0.023027 0.394541 -0.027260 0.446990 4.823312 -3.076018 -4.203299 1.283053 -3.649585 11.199993 3.514127 -3.731237 18.540051 5.794246 10.439932 10.872869 -13.158144 17.439377 -14.327139 4.120765 -23.466368 -15.931002 -80.162827 -46.181778 28.302616 -21.938387 -37.609352 4.062568 -0.247865 -0.094603 0.500648 5.583919 9.475564 -15.545424 68.876045 33.652359 11.724177 29.231306 43.623585 7.412969 -0.588198 -0.164948 -0.081871 +0.084605 1.635856 -0.114058 -3.755568 -34.813919 9.017931 3.085687 -3.651858 -10.354903 -7.821445 0.668097 19.724806 -0.724290 0.408701 -0.193456 0.741831 0.501515 0.825046 -5.085648 3.045202 -21.837099 -0.542986 -0.520094 16.834372 -0.401134 -0.315330 0.013051 0.377212 -0.034518 0.445089 5.564223 -3.490164 -3.462853 1.290342 -3.870229 10.969480 3.369160 -3.876795 17.628319 5.523723 9.889712 10.375631 -12.552778 16.659075 -13.887792 1.677854 -23.285875 -15.208591 -77.581581 -43.983147 24.594301 -21.347328 -33.903473 3.281768 -0.231740 -0.091070 0.510287 5.728739 9.141832 -15.529655 66.954773 31.854429 9.537202 27.638260 38.865200 5.758027 -0.572394 -0.157926 -0.079069 +0.090152 1.632178 -0.112394 -3.403262 -32.989090 8.500189 3.090080 -4.113754 -11.104386 -8.442555 0.771487 21.286917 -0.710280 0.403827 -0.193826 0.722182 0.466220 0.810645 -5.685480 2.989309 -23.588095 -0.342014 -0.723596 21.241095 -0.396328 -0.305020 0.010894 0.346616 -0.043217 0.446991 6.037810 -3.588850 -2.669135 1.318733 -3.803905 10.653463 3.278777 -3.718045 16.624069 5.429049 9.262973 10.152700 -12.197408 16.071753 -13.294462 -1.349499 -22.502745 -14.363648 -75.219315 -41.628216 21.271864 -20.064365 -29.805319 2.374411 -0.218976 -0.083991 0.520432 5.536554 8.492969 -15.240474 65.425079 29.779852 7.567086 25.802567 34.194653 4.266063 -0.558312 -0.148548 -0.073258 +0.095481 1.629473 -0.110172 -3.334122 -31.344221 7.811875 3.351379 -4.316428 -11.063261 -9.298347 0.937335 22.033400 -0.689912 0.363937 -0.207350 0.731362 0.468459 0.818316 -5.819951 3.058365 -25.497442 -0.364857 -0.890390 26.363552 -0.405666 -0.279739 -0.000129 0.330689 -0.088644 0.442846 6.311384 -3.578702 -1.601789 1.718378 -3.716057 10.377161 3.749720 -3.616927 15.713515 4.782694 8.640299 10.450081 -12.011909 15.353668 -13.190159 -3.850189 -21.759279 -13.490373 -72.640694 -39.642048 18.165287 -17.126104 -26.735561 1.163237 -0.172690 -0.064552 0.536757 6.209223 8.137712 -15.045162 62.200516 27.879116 5.806174 24.360037 28.679926 3.186207 -0.530866 -0.145853 -0.050635 +0.101856 1.626541 -0.107631 -2.855600 -29.450518 6.683204 2.893708 -4.608005 -10.756348 -9.644609 1.004357 23.003426 -0.678482 0.338515 -0.217568 0.723085 0.447610 0.812042 -6.404965 2.954863 -27.601337 -0.203286 -1.163822 32.067871 -0.415417 -0.234679 -0.001782 0.300252 -0.119911 0.435331 6.261549 -3.621241 -0.182850 2.180018 -3.794796 10.020690 4.288009 -3.625567 14.534997 3.831196 7.921453 11.326707 -11.752654 14.255855 -13.344999 -6.215108 -21.321112 -12.427036 -69.406548 -37.072773 14.570958 -14.190797 -24.220568 0.088817 -0.131624 -0.084574 0.573870 6.855547 8.504256 -14.322910 58.582947 25.681368 3.904279 22.017820 23.576063 2.106881 -0.508782 -0.104326 -0.039798 +0.108980 1.623966 -0.105440 -2.723150 -27.932606 5.635265 2.712929 -4.813019 -10.472246 -10.119644 1.150131 24.116980 -0.673374 0.314505 -0.231421 0.718763 0.445225 0.801680 -6.691819 3.079387 -29.902905 0.070381 -1.444628 37.795067 -0.430214 -0.181526 -0.004979 0.281600 -0.141277 0.426583 6.789803 -3.691722 1.488590 2.592946 -3.780725 9.747213 4.403991 -3.533485 13.484839 2.744977 7.700224 12.089128 -11.140582 13.081986 -14.175436 -8.084806 -20.713964 -11.708460 -66.024620 -34.458389 11.332027 -11.020774 -21.438622 -0.841928 -0.097585 -0.121823 0.611253 7.555381 8.497947 -13.813388 55.422333 23.877342 2.475344 18.792103 18.776834 1.139875 -0.491107 -0.046234 -0.028338 +0.115295 1.621116 -0.102983 -2.495443 -26.280951 4.348070 2.442348 -5.055665 -10.023326 -10.582248 1.317064 25.364876 -0.672470 0.287845 -0.237984 0.715858 0.438845 0.791396 -6.766778 3.206179 -32.194660 0.263626 -1.714481 43.795910 -0.436268 -0.125258 -0.000960 0.266797 -0.157468 0.399156 7.112445 -3.866680 3.392800 2.979767 -3.884837 9.434582 4.469942 -3.548762 12.360051 1.561258 7.796877 12.856572 -10.119952 12.006000 -14.783854 -9.160623 -19.783697 -11.121583 -62.669003 -31.926392 8.742968 -8.672855 -19.054754 -1.357062 -0.052632 -0.162017 0.651091 8.535338 7.598685 -13.142087 52.223011 21.846369 0.988571 16.367065 16.431997 0.643504 -0.472848 0.007767 -0.031653 +0.121650 1.619529 -0.100139 -2.398540 -24.582956 2.902677 2.131619 -5.065949 -8.908701 -10.783195 1.434792 26.044443 -0.682050 0.250719 -0.257115 0.742176 0.457198 0.811764 -6.397417 3.647838 -34.433758 0.370956 -1.873216 49.838406 -0.459638 -0.072150 -0.004570 0.266195 -0.205717 0.383250 7.290061 -3.869615 5.479620 3.580310 -3.928139 9.217341 4.835080 -3.525605 11.416520 0.683580 7.435403 13.507328 -9.651917 10.950624 -16.168123 -9.879373 -18.907215 -10.701279 -59.599251 -29.748726 6.808343 -6.897329 -16.836237 -1.625901 0.007793 -0.188465 0.706273 8.602891 6.605799 -12.287846 49.425083 19.517731 -0.634265 13.037437 15.636235 0.109706 -0.459547 0.046651 -0.026176 +0.127928 1.618436 -0.096939 -2.208760 -23.385796 1.331861 1.790020 -5.037875 -7.601022 -11.237442 1.604962 26.510326 -0.681876 0.204592 -0.274475 0.763898 0.482873 0.828570 -6.042880 4.158489 -36.232037 1.036411 -2.243263 54.902790 -0.485143 -0.021191 -0.008208 0.265067 -0.254825 0.368472 7.415636 -3.840186 7.724665 4.146320 -3.938944 9.068166 5.089520 -3.467563 10.542577 -0.231859 7.442299 14.200356 -9.666759 10.348071 -17.698994 -10.695885 -17.898386 -10.264501 -56.126587 -27.516502 4.990882 -5.431382 -15.129548 -1.759436 0.064350 -0.213054 0.751027 8.596458 5.660647 -11.704353 46.838070 17.569216 -1.648499 9.836167 13.006682 -0.268956 -0.441483 0.084346 -0.014633 +0.134141 1.617359 -0.091877 -2.175047 -22.502855 -0.033394 1.442016 -5.004296 -6.335374 -11.580451 1.757685 27.042522 -0.647801 0.173622 -0.270630 0.772992 0.485825 0.838400 -5.459860 4.745141 -37.654560 1.706883 -2.655010 59.103065 -0.494912 0.001233 -0.009212 0.246123 -0.283816 0.372076 8.114553 -3.976257 9.545574 4.598077 -3.864997 8.910819 5.013246 -3.345956 9.754962 -1.001537 7.293248 14.474712 -9.936454 9.855046 -17.760483 -11.828453 -16.445377 -9.789140 -52.368984 -25.280626 3.461583 -4.625863 -13.554544 -1.701028 0.100089 -0.199133 0.755116 8.290041 4.392107 -11.157803 44.434635 15.724664 -2.269015 7.302358 9.910656 -0.422149 -0.412208 0.086069 0.011751 +0.139429 1.616919 -0.086962 -1.858540 -21.448971 -1.656369 0.888064 -5.126836 -5.047823 -12.242907 1.971118 27.952705 -0.615681 0.139276 -0.264203 0.781038 0.499090 0.826399 -4.752303 5.159188 -38.227467 2.341050 -3.057036 62.024246 -0.504690 0.024116 -0.009551 0.237936 -0.300295 0.366054 8.618409 -4.335685 11.381587 4.874151 -3.995136 8.851495 4.695196 -3.417089 9.072591 -2.195494 7.657135 14.549543 -9.631670 9.209462 -17.948116 -12.417798 -14.865746 -9.102456 -48.489285 -22.627131 1.870270 -3.348772 -12.978039 -1.758532 0.142590 -0.185488 0.757652 8.490059 3.146681 -10.875352 41.980942 14.299168 -2.710303 5.103944 6.871451 -0.438732 -0.384523 0.089374 0.032075 +0.145279 1.616399 -0.080703 -1.987689 -20.319613 -2.985504 0.706570 -5.149181 -3.575767 -12.617609 2.093268 28.402304 -0.621510 0.131086 -0.250697 0.766813 0.484197 0.815888 -3.668618 5.603782 -38.432129 3.418152 -3.815818 64.042374 -0.501132 0.053684 0.006717 0.230114 -0.293987 0.334956 9.512220 -4.957158 12.669002 5.109103 -4.244118 8.977954 4.303888 -3.544610 8.780342 -2.899643 8.002971 14.370511 -9.765591 8.928611 -18.517262 -11.988320 -12.979684 -8.505713 -45.862499 -20.219334 0.759443 -1.738338 -12.751713 -1.887986 0.161790 -0.231011 0.778745 7.048268 1.408308 -10.675583 40.771896 13.135155 -3.063498 3.419028 5.025157 -0.406247 -0.380247 0.124140 0.008445 +0.150405 1.616565 -0.074521 -1.894586 -18.880018 -4.391121 0.481657 -5.295700 -2.164596 -12.952045 2.166445 28.891436 -0.630033 0.142582 -0.253220 0.727329 0.426361 0.797037 -2.630907 5.739707 -37.904804 4.469209 -4.569435 64.450294 -0.483549 0.058387 0.006610 0.199678 -0.295886 0.324848 9.759647 -5.494516 13.911802 5.429357 -4.656223 9.024693 4.294415 -3.798410 8.361103 -3.074886 7.880970 14.327673 -10.304857 8.868049 -18.220480 -12.193139 -11.478036 -7.681106 -42.719383 -17.627207 -0.263942 -0.189310 -12.348225 -1.957202 0.160933 -0.247615 0.794794 5.803906 0.075581 -10.055680 39.129917 11.509327 -3.619625 1.621444 4.144966 -0.371325 -0.374193 0.143016 -0.011654 +0.154832 1.616904 -0.067995 -1.882743 -17.358936 -5.631904 0.137725 -5.501371 -0.916787 -12.694860 2.077723 29.550722 -0.627206 0.155013 -0.244108 0.699355 0.375096 0.788940 -1.516503 5.878325 -37.532955 5.978587 -5.575004 64.459106 -0.469407 0.064039 0.010145 0.170551 -0.292572 0.318183 9.886794 -5.959762 14.860575 5.715011 -5.003253 9.114919 4.414496 -4.008487 8.049731 -3.010254 7.480557 14.010108 -10.442042 8.661354 -17.830647 -11.740071 -9.412351 -7.007250 -40.645203 -15.243233 -1.102214 1.421734 -13.038127 -2.120101 0.162378 -0.254339 0.804854 4.065310 -1.720223 -9.502506 37.865334 9.886753 -4.142363 0.112870 3.768971 -0.336539 -0.365749 0.152017 -0.026651 +0.160417 1.617483 -0.060699 -1.887914 -15.910677 -6.742328 -0.618311 -5.646820 0.535678 -12.046301 1.813194 29.865625 -0.610213 0.168314 -0.226951 0.659603 0.324452 0.757086 -0.585518 5.865366 -37.233700 7.715429 -6.666444 63.780704 -0.452771 0.056697 0.015954 0.136990 -0.270471 0.319443 10.671004 -6.626561 15.513944 5.748904 -5.205064 9.258593 3.959971 -4.088583 7.821506 -2.948819 7.156615 13.324201 -10.562287 8.470918 -17.229403 -11.438228 -7.300696 -6.615018 -38.184170 -13.297992 -1.688035 2.497124 -13.812566 -2.190413 0.151661 -0.250631 0.795968 2.446911 -4.015463 -9.051552 36.803410 8.150711 -4.753599 -1.518933 4.348881 -0.365237 -0.355870 0.155265 -0.033555 +0.165915 1.616960 -0.052456 -1.490190 -14.574328 -7.540933 -1.759423 -5.829533 1.599605 -11.689550 1.616582 30.079950 -0.609239 0.211854 -0.205383 0.590290 0.226915 0.724539 0.065190 5.642805 -36.876362 9.463140 -7.560835 61.792778 -0.415422 0.042000 0.018199 0.091344 -0.233593 0.309348 11.077460 -6.996579 15.539642 5.708070 -5.314978 9.222696 3.738240 -4.055237 7.560711 -2.657047 6.570048 12.704834 -10.919835 8.463791 -15.690054 -10.987993 -5.187271 -6.401853 -36.524437 -11.817648 -2.097512 4.168013 -14.285155 -2.344460 0.118566 -0.264619 0.786008 0.686815 -6.502624 -8.381346 35.541290 6.082051 -5.362917 -2.860470 5.193972 -0.388392 -0.349154 0.162360 -0.068609 +0.171106 1.617882 -0.044561 -1.006073 -13.803840 -8.508443 -2.746237 -5.761288 3.084855 -11.968323 1.649002 29.830801 -0.621846 0.249213 -0.191296 0.527758 0.150228 0.693692 1.059205 5.777504 -36.152599 10.692547 -7.849844 59.134991 -0.378494 0.034080 0.030050 0.059990 -0.198980 0.290624 11.152011 -7.225734 15.588461 5.632852 -5.457507 9.456184 3.526150 -4.056798 7.710233 -2.530942 6.034244 12.079504 -11.756313 8.451816 -14.921094 -11.175639 -3.053476 -6.329702 -34.059891 -10.027780 -2.528913 5.571686 -15.767790 -2.540047 0.081960 -0.300600 0.777732 -0.203889 -8.401016 -8.051851 33.242374 4.668390 -5.617304 -3.848776 5.753705 -0.377522 -0.354285 0.184400 -0.106498 +0.176478 1.620728 -0.036729 -0.406610 -13.206940 -9.828917 -3.926695 -5.543361 5.001095 -11.975647 1.562431 29.236265 -0.605870 0.235404 -0.174646 0.501454 0.138229 0.670391 2.219491 5.904577 -34.555080 11.299890 -7.582111 55.713551 -0.365749 0.038043 0.048153 0.049649 -0.186592 0.270805 11.202026 -7.514512 15.726274 5.375001 -5.591716 9.919951 2.940408 -4.147343 8.114386 -2.081576 5.591244 11.877518 -12.220236 8.634819 -14.657080 -12.036433 -1.674009 -6.001417 -30.690527 -7.703784 -3.032579 7.436668 -18.564142 -2.906068 0.079899 -0.318285 0.762967 -0.570418 -9.385583 -7.559289 31.135132 3.161576 -5.824035 -5.063494 6.330867 -0.398877 -0.347763 0.193552 -0.116251 +0.181585 1.623493 -0.028030 0.276213 -12.243917 -10.925541 -5.044120 -5.461626 6.484826 -12.113650 1.485913 28.846609 -0.622692 0.252239 -0.177419 0.513717 0.135079 0.688628 3.152166 5.742441 -32.748402 11.320073 -7.014176 51.762642 -0.364545 0.028658 0.038032 0.058784 -0.189687 0.273278 11.138654 -7.884581 14.951833 5.003368 -5.947675 10.527719 2.451710 -4.471189 9.198942 -2.240231 5.349474 11.703313 -12.293002 8.299742 -14.648385 -12.094965 -0.320884 -5.883162 -28.073393 -5.768735 -3.212739 8.910892 -19.257002 -3.104298 0.079176 -0.309282 0.767407 0.014648 -10.083215 -7.654359 28.080332 2.456949 -5.655083 -6.328747 5.859103 -0.365277 -0.353820 0.178416 -0.123510 +0.187703 1.625849 -0.019384 0.948997 -11.169830 -12.090234 -6.205921 -5.487468 7.750029 -12.270072 1.400043 28.896019 -0.614251 0.254936 -0.174718 0.524315 0.147737 0.685233 3.936343 5.381242 -30.783531 11.288417 -6.469450 47.540325 -0.366559 0.013733 0.030338 0.066280 -0.185210 0.285442 11.497007 -8.432092 14.508771 4.575527 -6.238729 11.029610 1.642748 -4.743938 9.940915 -2.526060 5.175299 11.113753 -12.130023 7.805564 -14.652235 -12.238344 0.929030 -5.919174 -25.380159 -4.183997 -3.190051 9.866738 -19.473000 -3.134611 0.078861 -0.281435 0.751820 0.236508 -10.990725 -7.711123 25.326334 1.746981 -5.389225 -7.042243 5.636880 -0.329813 -0.351790 0.156201 -0.110504 +0.193065 1.626720 -0.009959 1.516709 -10.182038 -12.921791 -7.064865 -5.638588 8.497404 -12.987692 1.524318 29.409908 -0.598530 0.237255 -0.183489 0.540163 0.167509 0.695151 4.908900 5.088339 -28.563667 11.085308 -5.740803 42.433559 -0.371213 0.007427 0.024585 0.068714 -0.207223 0.298049 11.417262 -8.636563 13.968605 4.485554 -6.467214 11.234585 1.521598 -4.931324 10.365324 -2.464418 4.806523 11.110563 -12.440313 7.651311 -14.648966 -11.645477 1.991255 -5.863386 -24.028017 -3.135989 -3.148629 10.323083 -18.225908 -2.946486 0.087290 -0.250448 0.738480 -0.959873 -11.958897 -7.447312 23.567247 0.935212 -5.259473 -7.842466 5.129245 -0.262309 -0.344164 0.136116 -0.084886 +0.197682 1.624875 -0.001072 1.953781 -9.176653 -13.187037 -7.526330 -5.930067 8.515532 -14.109015 1.814248 30.256285 -0.604168 0.249534 -0.170041 0.532370 0.156245 0.691577 5.666242 4.769866 -26.777435 11.231659 -5.129622 36.885464 -0.357742 -0.007828 0.036477 0.071792 -0.190712 0.287566 11.503110 -8.733062 12.791336 4.297537 -6.545551 11.291996 1.375769 -4.975177 10.847047 -2.383180 4.415726 10.993388 -12.934181 7.620457 -13.793324 -10.655560 2.977595 -5.967607 -22.697716 -2.777072 -2.927337 9.957746 -16.833422 -2.644819 0.076326 -0.257731 0.725798 -2.167334 -13.120697 -7.042492 21.803942 -0.052955 -5.041074 -7.735918 5.238700 -0.248794 -0.352818 0.124083 -0.100952 +0.202215 1.622447 0.008235 2.448682 -8.356561 -13.450181 -7.877079 -6.188453 8.431261 -15.576659 2.252379 31.159008 -0.598571 0.254664 -0.154423 0.539586 0.167877 0.695055 6.516151 4.564859 -24.830172 10.912866 -4.308444 31.196280 -0.354991 -0.026848 0.038192 0.084091 -0.174946 0.286965 11.573364 -8.923255 11.627342 3.975466 -6.685982 11.402855 1.041291 -5.135677 11.418332 -2.181147 4.167827 10.772692 -13.010827 7.578401 -13.137735 -10.077913 4.352905 -6.223819 -21.219194 -2.141149 -2.757571 9.944093 -16.126392 -2.469346 0.069230 -0.247309 0.704824 -2.731207 -14.117768 -7.233391 19.786867 -0.068752 -4.672304 -8.087139 5.048856 -0.261509 -0.354468 0.098691 -0.103191 +0.206801 1.619516 0.016788 2.786683 -7.637924 -13.842036 -8.103809 -6.427369 8.446346 -16.739782 2.635273 32.203377 -0.592900 0.252512 -0.166239 0.553172 0.191362 0.688646 7.454468 4.416574 -22.449331 10.176303 -3.389392 25.191154 -0.353870 -0.053241 0.034468 0.095390 -0.178290 0.306808 11.792910 -9.076713 10.506375 3.685543 -6.803295 11.677050 0.640462 -5.262598 12.224933 -2.152959 4.107105 10.590669 -13.219475 7.525066 -12.941433 -9.822303 5.423920 -6.269403 -19.306263 -1.167899 -2.527622 9.634776 -16.665014 -2.404252 0.056142 -0.206853 0.678734 -2.770318 -14.699391 -7.437585 17.794374 0.024914 -4.264306 -8.372012 5.305501 -0.306069 -0.364081 0.069364 -0.078687 +0.211816 1.615256 0.025531 3.174287 -6.853773 -14.296515 -8.387883 -6.648635 8.555002 -18.129774 3.115965 33.321651 -0.569421 0.241591 -0.161353 0.576049 0.227869 0.694772 8.175173 4.123074 -20.040339 9.147344 -2.592812 19.726526 -0.372583 -0.065819 0.032260 0.104084 -0.181297 0.334243 11.961381 -9.134136 9.740479 3.471229 -6.830770 11.823802 0.264697 -5.294850 12.673656 -1.842391 3.666550 10.645670 -13.441114 7.366487 -13.118397 -9.513453 6.524550 -6.731490 -17.901108 -1.097103 -2.321706 9.492599 -16.394730 -2.287619 0.055952 -0.179758 0.661451 -3.781359 -15.804683 -7.406123 16.705795 -0.257333 -4.038604 -8.600548 6.224546 -0.384813 -0.360754 0.048516 -0.047453 +0.216224 1.608040 0.035131 4.024562 -5.872289 -14.642283 -9.198136 -6.860587 8.581141 -19.530458 3.640507 34.533554 -0.579719 0.253971 -0.155659 0.546840 0.207574 0.676913 8.536102 3.700110 -17.784891 7.390490 -1.835848 14.727482 -0.353685 -0.065003 0.039600 0.103787 -0.159785 0.313112 11.468879 -8.959882 9.120256 3.207470 -6.883799 11.685587 0.094433 -5.330815 12.655455 -1.645102 3.692533 10.653983 -13.556220 7.550326 -12.820971 -8.396857 7.524016 -7.196652 -16.704649 -1.651066 -2.020716 8.377947 -14.339320 -1.900223 0.035184 -0.212803 0.651831 -5.057623 -17.278666 -7.363119 15.874871 -0.451871 -3.816604 -8.187613 7.389155 -0.448485 -0.365736 0.065905 -0.071869 +0.220202 1.600242 0.045119 4.652291 -4.303390 -15.109838 -9.622871 -7.251557 8.833234 -20.994297 4.199568 35.949417 -0.598364 0.258581 -0.167188 0.547445 0.215617 0.683633 8.627649 3.233695 -15.915921 5.674345 -1.375939 11.181055 -0.347103 -0.066404 0.036311 0.117678 -0.159872 0.303920 11.206360 -9.162292 8.149042 2.664571 -7.193390 11.761765 -0.441466 -5.649238 13.152406 -1.220223 3.763769 10.648293 -13.470514 7.756055 -13.140706 -7.481570 8.353357 -7.507329 -14.938253 -1.851918 -1.652692 6.814520 -12.610357 -1.557185 0.021610 -0.222909 0.648065 -5.657560 -18.414675 -7.735792 15.230223 -0.335267 -3.684000 -8.878238 7.703172 -0.504095 -0.376232 0.069974 -0.080859 +0.224374 1.591745 0.054602 5.171485 -3.457431 -15.370790 -9.825744 -7.448458 8.913004 -22.667845 4.944061 37.109230 -0.591631 0.253804 -0.164216 0.557258 0.228446 0.684968 8.518587 2.939024 -14.829436 4.944679 -1.191964 9.281343 -0.343713 -0.077966 0.040118 0.125604 -0.158084 0.305579 11.167620 -9.222609 7.832871 2.365947 -7.227389 11.530937 -0.845358 -5.731473 12.915031 -0.981042 3.773301 10.388954 -13.276467 7.836535 -12.853318 -6.722301 9.333761 -7.985518 -13.801444 -2.412543 -1.430594 6.226957 -11.007538 -1.342433 0.021177 -0.204437 0.634001 -6.706178 -19.608217 -7.942707 14.592486 -0.076018 -3.491260 -9.746717 8.378202 -0.583484 -0.378160 0.050233 -0.074835 +0.228646 1.584113 0.061967 4.831555 -2.748364 -15.783571 -9.225907 -7.776366 8.926030 -24.031298 5.731648 38.716942 -0.597881 0.277068 -0.165818 0.534448 0.198134 0.663393 8.674477 2.893362 -14.287873 5.410257 -1.265435 8.954817 -0.324279 -0.096132 0.043077 0.114325 -0.140422 0.309628 11.981267 -9.557547 8.165059 2.365206 -7.284143 11.348562 -1.261078 -5.744738 12.413712 -1.155864 3.925361 9.609926 -13.480472 7.815515 -12.445586 -6.881211 9.920022 -8.470833 -12.467811 -2.588734 -1.232047 5.971716 -9.312444 -1.180564 -0.004238 -0.194875 0.619768 -7.286872 -20.409159 -7.970345 13.427250 0.127721 -3.174537 -10.771729 9.433916 -0.667027 -0.388629 0.045664 -0.080765 +0.232411 1.577109 0.067838 4.144207 -2.425409 -15.781723 -8.203087 -7.968066 8.519644 -25.089634 6.510585 40.094185 -0.579136 0.307647 -0.131935 0.487959 0.144525 0.630558 8.906473 3.192267 -15.039022 6.293676 -1.476150 10.436006 -0.305540 -0.118252 0.055447 0.083143 -0.092260 0.315156 13.385659 -9.779045 7.938061 2.355916 -7.076808 11.100707 -1.788212 -5.547588 12.016577 -0.932139 3.678276 9.006067 -13.877441 7.967982 -11.015976 -7.067632 9.342567 -8.069016 -10.995346 -2.142030 -1.045620 5.361242 -7.672340 -1.006917 -0.037122 -0.205235 0.597120 -8.266223 -19.996689 -7.042833 12.910398 -0.900626 -3.110002 -12.091113 10.091917 -0.735080 -0.384823 0.044058 -0.095253 +0.236132 1.572569 0.070964 3.597286 -2.611845 -16.187992 -7.489793 -7.887073 8.349902 -25.800768 7.256255 41.346813 -0.531356 0.278513 -0.124628 0.488078 0.154872 0.620352 8.746735 3.552403 -16.098890 7.686231 -1.858089 13.307311 -0.310598 -0.125455 0.055216 0.066379 -0.104139 0.333931 14.335569 -9.991561 8.815681 2.481429 -6.824279 11.091916 -2.123575 -5.359133 11.562819 -0.885094 3.771662 8.164620 -14.169802 8.207080 -10.830535 -7.799534 8.883418 -7.355741 -9.854422 -0.736476 -0.935953 5.340904 -7.290670 -0.889146 -0.027120 -0.160519 0.570353 -8.677763 -19.193880 -6.446342 12.455900 -1.332025 -3.024599 -13.342148 10.396764 -0.788946 -0.361597 0.021108 -0.057897 +0.238442 1.569771 0.073238 3.347018 -2.652537 -16.740406 -7.375207 -7.711689 8.383319 -25.727104 7.586590 42.271820 -0.463973 0.230246 -0.111409 0.505858 0.181223 0.617479 8.021312 3.660187 -16.761732 9.231949 -2.305269 15.797264 -0.325900 -0.115557 0.060151 0.049510 -0.127910 0.352130 14.189692 -9.782053 10.172961 2.975234 -6.529137 10.956674 -1.669143 -5.116862 10.777116 -1.200501 3.797822 8.106646 -14.033078 8.104652 -10.478606 -7.993258 8.264083 -6.661626 -10.299190 0.147855 -1.115474 5.471440 -6.472231 -0.790633 0.010795 -0.111835 0.550053 -9.272883 -18.396490 -5.630602 12.047355 -2.115676 -2.988931 -14.155423 10.398777 -0.760044 -0.324367 -0.001117 -0.007940 +0.239300 1.567968 0.073541 3.232635 -2.714440 -17.350124 -7.334579 -7.424700 8.558422 -25.526226 7.887050 43.080967 -0.447463 0.204414 -0.111069 0.502641 0.172903 0.606165 7.340649 3.785547 -17.041624 10.449183 -2.607938 17.317030 -0.324861 -0.094518 0.060861 0.035556 -0.140497 0.337043 13.701658 -9.486518 12.066614 3.393023 -6.236355 10.768343 -1.294028 -4.821706 9.665657 -1.459673 4.129537 8.364676 -13.016049 7.899854 -10.193143 -7.596145 7.995392 -6.292735 -11.293535 0.554614 -1.373175 5.006302 -4.492879 -0.680459 0.045295 -0.104305 0.563128 -10.157625 -17.852879 -5.125590 12.633853 -2.311388 -3.170700 -14.824760 10.544926 -0.756092 -0.304272 0.005752 -0.005393 +0.238564 1.566532 0.074194 3.325954 -2.423187 -17.376730 -7.334501 -7.138654 8.343206 -25.127584 8.075340 43.822269 -0.447108 0.171137 -0.127983 0.516570 0.187323 0.621114 6.550024 3.865166 -17.312525 11.427946 -2.741930 17.661400 -0.331139 -0.075508 0.056071 0.035816 -0.177751 0.325450 13.008883 -8.993628 12.844796 3.521046 -5.916663 10.562853 -1.005907 -4.542493 9.142510 -1.138466 3.693968 8.605086 -12.772305 7.698024 -10.650091 -7.479589 7.651973 -6.116244 -11.652186 0.886873 -1.537213 3.645853 -1.769328 -0.583025 0.076684 -0.096917 0.578621 -10.745539 -17.122847 -4.673400 13.821847 -2.803336 -3.496293 -15.482805 10.930993 -0.831296 -0.294332 0.009093 0.003584 +0.239153 1.566843 0.075885 3.421980 -2.739570 -16.814859 -7.461777 -6.667479 7.809859 -24.639397 8.146693 43.947014 -0.430532 0.148933 -0.102314 0.533586 0.205458 0.645152 6.055876 4.020766 -17.621496 12.238129 -2.710548 17.189711 -0.336762 -0.067415 0.065153 0.047211 -0.185195 0.305626 12.452289 -8.537021 12.897413 3.652378 -5.638501 10.291553 -0.624201 -4.363271 8.798929 -0.895484 3.114164 8.706623 -13.015443 7.644840 -10.131007 -7.753488 8.381293 -6.008514 -12.298010 1.854503 -1.687602 2.822390 -1.896179 -0.552010 0.108215 -0.106698 0.577784 -11.160137 -16.421246 -4.610118 14.126824 -1.905852 -3.442018 -15.352974 11.317345 -0.952855 -0.276235 -0.006753 -0.006018 +0.239177 1.568809 0.075778 3.635858 -2.996314 -16.444433 -7.990368 -6.281932 7.378393 -23.796600 7.970345 44.079601 -0.443616 0.148955 -0.098127 0.547156 0.214189 0.665587 5.968394 4.145527 -17.386885 12.070896 -2.459974 16.260868 -0.335538 -0.061054 0.062121 0.063255 -0.192392 0.288797 11.827845 -8.069633 12.835941 3.734097 -5.432897 10.364620 -0.277183 -4.170524 9.002407 -1.296627 2.593288 8.650102 -13.169559 7.001642 -10.244490 -8.438615 9.182777 -6.225212 -12.940074 2.511759 -1.765737 2.479276 -3.195770 -0.586702 0.122088 -0.121010 0.583306 -10.258843 -15.881330 -4.890172 13.244956 -0.917805 -3.141329 -14.945401 12.025268 -1.090425 -0.274869 -0.010445 -0.019491 +0.237855 1.571667 0.074308 3.742484 -3.022104 -16.182823 -8.155717 -5.972003 7.115982 -23.271181 7.831366 43.896961 -0.454370 0.166697 -0.093497 0.549135 0.199649 0.676859 6.399158 4.287436 -16.850082 11.069496 -2.047534 14.816210 -0.340110 -0.047780 0.054480 0.059340 -0.188815 0.287366 11.079630 -7.701436 12.968838 3.806796 -5.352726 10.448554 0.070969 -4.042615 9.084357 -1.837973 2.108558 9.006285 -12.976683 6.125064 -10.396426 -8.787158 9.857566 -6.270024 -14.229845 3.270169 -1.998384 3.380275 -4.951536 -0.670378 0.126871 -0.138003 0.599859 -9.521758 -15.276771 -5.001869 12.978760 -0.229275 -3.026392 -14.286368 13.509858 -1.280340 -0.273381 0.003472 -0.028202 +0.237874 1.574979 0.073350 3.916366 -2.999098 -15.497661 -8.379184 -5.687141 6.592358 -22.912998 7.669127 43.419495 -0.474225 0.205595 -0.103315 0.518960 0.159867 0.626114 6.770722 4.265765 -16.439150 9.820209 -1.645097 12.761703 -0.324324 -0.066942 0.048884 0.046597 -0.155477 0.297358 10.853627 -7.473538 12.355332 3.533782 -5.250336 10.355438 -0.090546 -3.914981 9.207302 -2.497175 2.057365 9.405300 -12.175316 5.221722 -9.648104 -9.085279 10.289204 -6.179782 -15.580684 4.047948 -2.249991 5.602591 -7.238420 -0.863319 0.100241 -0.130031 0.599009 -8.066611 -14.656738 -5.179974 12.438390 0.248389 -2.882872 -13.990202 15.914768 -1.600016 -0.292725 0.011596 -0.037084 +0.237441 1.578211 0.070620 3.966943 -2.758923 -14.997231 -8.255903 -5.275952 6.219133 -22.613592 7.577706 42.818169 -0.486116 0.206624 -0.111840 0.507172 0.149262 0.588332 7.219385 4.358348 -16.288055 8.392530 -1.305886 11.431644 -0.322421 -0.045340 0.054456 0.039325 -0.143085 0.286862 11.052332 -7.310450 12.500518 3.238065 -4.955773 10.136659 -0.594737 -3.594270 8.804580 -3.663041 2.154204 9.779023 -11.004403 4.005689 -10.240213 -8.505431 10.448475 -5.773791 -18.117880 4.637877 -2.785499 6.715659 -8.673582 -1.064377 0.112852 -0.150194 0.621550 -7.738446 -13.803526 -4.988966 13.479264 0.211893 -3.157707 -13.342627 17.015072 -1.690594 -0.298428 0.048389 -0.043107 +0.237398 1.579882 0.068655 3.915880 -1.910652 -14.186563 -8.201230 -5.107973 5.733835 -22.151482 7.343387 42.362785 -0.511901 0.222026 -0.109240 0.485651 0.130104 0.557590 7.463756 4.280293 -16.385405 7.268109 -1.066722 9.818549 -0.300969 -0.027601 0.069566 0.044621 -0.111182 0.250634 11.261729 -7.288606 11.584753 2.795177 -4.878383 9.998405 -1.089216 -3.528922 8.968927 -4.448556 2.584807 9.904210 -9.842669 3.384850 -10.298676 -7.812850 10.518723 -5.223654 -20.149229 5.139461 -3.193446 7.856315 -11.169394 -1.391444 0.107171 -0.194572 0.631180 -6.759946 -12.934830 -5.323911 13.938816 1.061456 -3.255354 -12.383081 17.219070 -1.687908 -0.312584 0.083752 -0.078546 +0.236360 1.581114 0.064963 3.929877 -0.941418 -13.533870 -7.996876 -4.990278 5.135885 -21.927469 7.293117 42.274246 -0.549865 0.234974 -0.117861 0.492396 0.136284 0.549065 7.582891 4.309534 -16.800430 6.249775 -0.886080 8.812644 -0.297516 -0.018000 0.073336 0.065061 -0.097271 0.230101 10.937512 -7.263999 11.058602 2.400058 -4.923978 10.019734 -1.322454 -3.577488 9.265025 -5.040269 3.045179 9.654984 -8.846375 2.926775 -11.206724 -7.393446 10.881449 -5.031012 -22.179565 5.405029 -3.609457 8.773015 -13.110270 -1.729870 0.110542 -0.218408 0.653744 -5.507053 -12.225116 -6.204278 14.523633 2.753454 -3.305740 -11.148066 16.988642 -1.627354 -0.333915 0.102853 -0.105414 +0.234845 1.581649 0.060721 3.986720 0.293346 -12.739963 -7.654302 -4.882473 4.416079 -21.998569 7.350576 42.115250 -0.547735 0.250104 -0.097882 0.497172 0.134265 0.534943 7.582975 4.293560 -17.427608 5.116940 -0.724834 7.756304 -0.291911 -0.022962 0.084830 0.069134 -0.063990 0.225600 10.813659 -7.430016 10.891404 1.969849 -4.983264 9.676713 -1.745103 -3.714412 8.829390 -5.708045 3.450609 9.289143 -7.832101 2.426238 -10.875951 -7.104867 11.702751 -5.084884 -23.953802 5.307051 -3.929873 8.978323 -14.319538 -1.925886 0.110809 -0.216004 0.649272 -4.346658 -11.749608 -7.279705 15.521336 4.790210 -3.314195 -9.785967 16.417763 -1.509638 -0.339683 0.096390 -0.114652 +0.233412 1.581572 0.055803 3.775319 1.672165 -11.777369 -7.033292 -4.788127 3.521564 -22.137239 7.445682 41.968452 -0.515993 0.230168 -0.089332 0.507043 0.161869 0.500739 7.698678 4.313052 -18.264874 4.180147 -0.594026 6.658639 -0.287723 -0.032990 0.084378 0.080215 -0.046340 0.222400 11.285539 -7.720548 10.262361 1.398567 -4.948231 9.393126 -2.533347 -3.817032 8.643242 -6.390893 4.103488 8.806616 -6.189029 1.904761 -10.325876 -6.523434 12.216082 -4.812400 -25.931305 5.195932 -4.311809 8.751471 -15.619110 -2.088205 0.126039 -0.166522 0.616119 -3.088890 -11.064935 -8.197205 16.603577 6.510370 -3.252963 -7.919317 15.592102 -1.325857 -0.327689 0.067163 -0.094621 +0.230897 1.580863 0.050187 4.015799 3.678971 -10.785007 -6.931099 -4.929534 2.397871 -21.978741 7.430902 42.452541 -0.477851 0.208516 -0.066912 0.530927 0.204815 0.492551 7.210684 4.170346 -19.322847 3.342558 -0.494656 5.710546 -0.292831 -0.040698 0.091523 0.097800 -0.031054 0.223175 10.415236 -7.448551 9.125325 1.036125 -4.891435 9.295308 -2.451778 -3.881030 9.031610 -6.138915 3.527831 8.738290 -4.978232 1.146277 -9.697126 -6.564608 12.156527 -4.697127 -27.791201 4.649632 -4.682385 8.688181 -17.831499 -2.418213 0.138719 -0.133231 0.580192 -1.508436 -10.180712 -8.818911 17.569128 7.265364 -3.296164 -6.512549 14.376296 -1.200077 -0.317080 0.034944 -0.071596 +0.229337 1.580562 0.044019 4.110227 5.690945 -10.244308 -6.929873 -5.036515 1.840681 -21.676477 7.306552 42.726692 -0.495579 0.220861 -0.066152 0.528701 0.203812 0.481851 6.676253 3.980944 -19.938200 2.722808 -0.462652 4.965367 -0.286320 -0.041199 0.094890 0.107734 -0.015076 0.212900 10.124492 -7.383855 8.667751 0.654095 -4.869855 9.284740 -2.775603 -3.868451 9.219626 -6.245075 2.965687 8.491001 -4.417862 0.373769 -10.003896 -7.289856 11.837891 -4.838820 -28.685011 4.091335 -4.803697 8.299001 -20.205982 -2.751060 0.133615 -0.147711 0.582997 -0.020337 -9.361313 -9.387289 18.991123 7.890006 -3.470946 -5.426448 13.439445 -1.115033 -0.329365 0.042717 -0.086118 +0.227885 1.580740 0.036558 3.989285 7.949725 -9.934842 -7.068533 -5.204543 1.643520 -20.526823 6.693830 42.749378 -0.508891 0.215092 -0.072599 0.543176 0.224990 0.481077 6.195630 3.750312 -20.308958 2.124880 -0.445103 4.174116 -0.292244 -0.030613 0.096160 0.123765 -0.016537 0.204749 10.131637 -7.436130 8.328128 0.316831 -4.869542 9.379216 -3.204801 -3.871868 9.497863 -6.320107 2.476312 8.564158 -3.651485 -0.358465 -10.802533 -8.144701 11.110174 -5.017533 -29.684099 3.367062 -4.971554 8.151765 -21.797413 -3.052512 0.144774 -0.157932 0.594302 1.288811 -8.415938 -9.779671 20.788771 8.305515 -3.690272 -4.315142 12.585699 -1.044921 -0.337616 0.052764 -0.089072 +0.226155 1.581065 0.028907 3.769262 10.142946 -9.510277 -6.915069 -5.322228 1.394679 -19.605961 6.208193 42.629673 -0.510372 0.215335 -0.076032 0.543365 0.226132 0.487787 5.713652 3.548740 -20.770416 1.664305 -0.443494 3.353856 -0.290367 -0.026321 0.090741 0.126217 -0.022510 0.201783 10.316546 -7.432814 8.029937 0.058176 -4.764056 9.331895 -3.617023 -3.772039 9.562066 -6.183808 1.687234 8.672363 -3.677676 -0.877481 -10.900681 -9.766968 10.159907 -5.444710 -30.188738 2.365940 -5.018300 8.369763 -23.435642 -3.397267 0.143089 -0.161792 0.589737 2.599916 -7.522945 -9.998303 22.741796 8.443540 -3.925492 -3.408916 12.107288 -1.021405 -0.335550 0.055184 -0.087100 +0.222817 1.580833 0.020355 3.618756 12.252890 -9.076368 -6.690907 -5.411732 1.122130 -18.549414 5.688759 42.417320 -0.538027 0.242453 -0.073322 0.554020 0.229933 0.479347 4.936792 3.344814 -21.383074 1.699067 -0.449997 2.620759 -0.284977 -0.039939 0.098484 0.144329 0.004372 0.199168 9.816666 -6.962046 7.528543 -0.039398 -4.484248 9.457363 -3.540447 -3.473099 9.998437 -6.029660 0.806877 8.952204 -2.826485 -1.948157 -10.763220 -11.109665 9.095212 -6.498713 -30.926548 0.077262 -4.825849 7.688038 -24.054075 -3.533066 0.132304 -0.169422 0.593304 4.921353 -6.842754 -10.428096 23.844744 8.481438 -4.067387 -2.322381 12.109526 -1.006630 -0.362359 0.050860 -0.103329 +0.219574 1.580364 0.011425 3.550957 14.287050 -8.726614 -6.379864 -5.428999 0.794932 -17.746920 5.337739 42.294090 -0.535887 0.226656 -0.084761 0.580355 0.268597 0.482841 4.350528 3.155591 -21.945658 1.090674 -0.427852 1.924945 -0.299845 -0.040489 0.085117 0.164848 -0.009739 0.206339 9.103741 -6.473783 7.299942 -0.109634 -4.198224 9.543425 -3.346781 -3.215122 10.306419 -5.728807 -0.407918 9.457000 -2.026471 -3.029159 -11.204853 -12.260705 8.086427 -7.409365 -32.157204 -2.181705 -4.767282 6.970241 -24.860491 -3.664497 0.148826 -0.147639 0.590159 6.565689 -5.866500 -10.769029 25.746321 8.863983 -4.256690 -1.788428 11.721493 -1.041462 -0.361173 0.037906 -0.084140 +0.216007 1.578797 0.002593 3.490875 16.290594 -8.369267 -6.123561 -5.512448 0.225715 -16.835335 4.993694 42.538658 -0.529575 0.207246 -0.086186 0.615729 0.312163 0.498897 3.516533 3.003710 -22.705107 0.668865 -0.408122 1.784638 -0.314774 -0.037352 0.088549 0.183948 -0.024658 0.213033 8.206921 -5.884849 7.235759 -0.100704 -3.860188 9.605570 -2.969213 -2.920262 10.506064 -5.384141 -1.912697 9.630924 -1.621377 -4.116765 -11.796526 -13.357919 6.874176 -8.138259 -33.406586 -4.287539 -4.698488 5.737362 -26.136980 -3.716217 0.166870 -0.136341 0.588231 7.898942 -4.715439 -10.719953 27.507015 9.022906 -4.338861 -0.610406 11.896057 -1.024677 -0.364636 0.026022 -0.063349 +0.212224 1.577393 -0.006190 3.340810 18.523157 -8.042706 -5.865916 -5.697076 -0.416960 -15.923670 4.634014 42.836346 -0.536444 0.210563 -0.089110 0.599900 0.297343 0.479028 2.465173 2.803395 -23.360516 0.585940 -0.401643 1.831574 -0.303996 -0.036967 0.085269 0.181694 -0.016078 0.199682 7.528837 -5.509830 7.462965 -0.149009 -3.666417 9.473260 -2.767115 -2.749368 10.227280 -5.084553 -2.815793 9.776386 -0.847751 -4.947966 -11.539871 -14.476995 5.471475 -8.519284 -34.511204 -5.950130 -4.605996 4.380730 -27.435734 -3.686648 0.166957 -0.139515 0.586323 9.410004 -3.304622 -10.528950 29.007563 9.310977 -4.369510 0.753923 12.473527 -0.974835 -0.365232 0.031272 -0.074194 +0.207780 1.576716 -0.015326 3.287005 20.838064 -7.844714 -5.518689 -5.826994 -0.980344 -15.070426 4.300341 42.896290 -0.534537 0.212007 -0.085149 0.596286 0.289448 0.476515 1.264955 2.684575 -24.172754 0.426945 -0.366344 2.753053 -0.300671 -0.028023 0.083905 0.178467 -0.011404 0.191490 6.621900 -5.139517 7.803907 -0.199702 -3.535221 9.445150 -2.494071 -2.652894 10.059346 -4.773354 -3.821144 10.110120 -0.015896 -5.843062 -11.397410 -15.678273 3.577830 -8.493804 -35.572437 -7.095898 -4.682981 3.000078 -29.461643 -3.713570 0.172351 -0.146007 0.587641 11.145553 -1.264125 -10.237552 30.348742 9.749285 -4.419700 1.657949 12.984951 -0.966791 -0.360956 0.037398 -0.078080 +0.202620 1.577025 -0.024810 3.256681 22.984734 -7.872527 -5.162873 -5.859348 -1.408191 -14.382940 4.094215 42.937103 -0.539098 0.207744 -0.082608 0.600674 0.291186 0.468888 -0.207190 2.664389 -25.038120 0.797997 -0.322369 4.699804 -0.302919 -0.010965 0.090315 0.180230 -0.005879 0.179071 5.797762 -4.752203 8.556449 -0.271644 -3.353103 9.426964 -2.341650 -2.505987 9.730827 -4.784332 -4.614678 10.739384 1.244864 -6.861841 -11.686688 -16.594900 1.732789 -8.498295 -36.596138 -8.472041 -4.625274 1.232092 -31.370882 -3.566630 0.189349 -0.161561 0.603688 12.708038 1.014437 -10.021794 31.675770 10.688722 -4.352881 2.392825 12.995306 -0.928877 -0.362566 0.053165 -0.085564 +0.197631 1.578051 -0.033862 2.829273 25.304111 -7.843194 -4.616441 -5.980406 -2.100504 -13.393435 3.729141 42.964241 -0.530055 0.178920 -0.086158 0.605119 0.311920 0.469364 -1.889207 2.667138 -26.108799 1.948417 -0.339328 6.981335 -0.311025 0.009784 0.090043 0.183934 -0.022455 0.166879 5.214069 -4.490573 9.074948 -0.133009 -3.294852 9.350096 -1.899279 -2.502079 9.444696 -4.713366 -5.866538 11.395557 1.495125 -7.722886 -12.131602 -17.307749 0.277800 -8.493655 -38.308933 -10.029378 -4.505558 -0.954443 -33.294331 -3.227742 0.209214 -0.176359 0.606336 13.183927 3.151016 -9.768736 33.386993 11.832898 -4.183924 3.019323 13.261099 -0.913734 -0.352236 0.068232 -0.076462 +0.193223 1.579373 -0.042578 2.484049 27.977200 -7.751638 -4.311097 -6.176940 -2.884927 -12.196054 3.263193 43.070892 -0.541206 0.169968 -0.093550 0.598434 0.308080 0.448574 -3.990055 2.576065 -27.252754 3.420485 -0.471439 9.995322 -0.312175 0.030379 0.093349 0.182591 -0.019568 0.149795 4.723536 -4.344171 9.331675 -0.129103 -3.378669 9.279859 -1.612962 -2.613530 9.213121 -4.821572 -6.535404 12.433414 2.953179 -8.676460 -12.525736 -17.024481 -0.717313 -8.231140 -41.065678 -11.602469 -4.369796 -2.967537 -36.218510 -3.001929 0.227194 -0.198091 0.630069 13.138674 5.245288 -9.554245 35.690285 13.279067 -3.963859 3.592250 13.918047 -0.905734 -0.354573 0.095316 -0.088315 +0.189072 1.581584 -0.049957 1.865449 30.718611 -7.708497 -3.815501 -6.392940 -3.783800 -10.971092 2.815003 43.304989 -0.534970 0.167854 -0.084985 0.606785 0.311432 0.452643 -6.223923 2.558901 -28.502472 5.851733 -0.823917 13.767307 -0.316229 0.043373 0.094435 0.182772 -0.014767 0.144054 4.592986 -4.333395 9.320169 -0.114940 -3.472768 9.247038 -1.439753 -2.778500 9.155622 -4.868971 -7.447747 13.027915 3.870798 -9.664237 -12.613807 -17.200693 -1.608177 -8.112102 -43.106060 -13.259000 -4.006097 -5.770580 -39.520477 -2.308715 0.240749 -0.203619 0.634872 13.289014 7.497856 -9.622794 37.697971 15.197155 -3.475591 4.001468 13.937556 -0.895281 -0.348751 0.100176 -0.087928 +0.183434 1.586262 -0.058541 1.354488 33.492352 -8.010381 -3.657483 -6.613099 -4.373858 -9.373219 2.160142 43.303696 -0.573775 0.160410 -0.114128 0.631004 0.333316 0.470132 -8.697450 2.512557 -29.453897 9.226365 -1.555251 18.160492 -0.334760 0.066750 0.087823 0.200052 -0.042485 0.139982 4.095198 -4.177905 10.162710 0.115392 -3.627291 9.343244 -0.937899 -2.929913 9.061774 -4.925704 -8.555503 13.678267 4.634355 -10.417125 -14.409803 -18.023531 -3.492726 -7.916337 -44.503078 -14.743550 -3.742747 -8.245678 -43.131371 -1.610453 0.262669 -0.227501 0.681649 13.618281 10.377492 -9.356873 38.796154 16.679996 -3.279438 4.152055 15.609466 -0.961879 -0.365449 0.127999 -0.095035 +0.176217 1.592012 -0.068292 0.799060 36.031700 -8.099056 -3.281379 -6.738570 -5.465189 -7.982557 1.680459 43.266087 -0.566937 0.115050 -0.133147 0.660233 0.386010 0.471406 -11.225476 2.588183 -30.847837 13.429811 -2.744313 22.998085 -0.355908 0.096970 0.083642 0.217307 -0.070753 0.133214 3.846922 -3.873697 10.806840 0.361600 -3.546401 9.458077 -0.480839 -2.924969 9.071146 -5.239531 -9.521555 14.326625 6.134569 -11.360838 -16.173449 -17.974445 -5.779720 -7.498515 -46.566113 -16.905218 -3.198153 -9.844667 -46.421879 -1.112694 0.299874 -0.225781 0.696549 13.410293 13.657501 -8.780685 39.728176 17.928946 -3.231884 3.462525 18.221159 -1.250502 -0.358443 0.144400 -0.071750 +0.171716 1.597739 -0.076033 -0.032820 38.894947 -8.414475 -2.958220 -6.839622 -6.135656 -6.211365 0.963992 42.859600 -0.571935 0.092545 -0.145623 0.692347 0.433616 0.478547 -13.706189 2.448046 -31.291513 18.053425 -4.395908 26.954058 -0.385581 0.120470 0.080358 0.237111 -0.084937 0.139118 4.136022 -3.832840 10.867440 0.535374 -3.585797 9.711209 -0.327272 -2.992548 9.469954 -5.224710 -10.536887 14.897994 7.549404 -12.029225 -18.052181 -17.926872 -8.213971 -6.929181 -48.450596 -19.065207 -2.565194 -11.832041 -51.055241 -0.311980 0.324362 -0.234166 0.723374 12.128415 17.020140 -8.116495 40.463005 19.111759 -3.092690 3.265156 21.091084 -1.503549 -0.363474 0.163179 -0.058007 +0.166892 1.606453 -0.082594 -0.986604 41.164921 -9.050812 -2.338379 -6.536524 -6.123587 -4.565276 0.398401 41.492256 -0.598095 0.095629 -0.174320 0.713298 0.455097 0.479037 -15.436587 2.733941 -31.114683 22.152109 -6.075501 30.274235 -0.401053 0.138537 0.068341 0.251989 -0.092328 0.146244 4.486831 -3.650137 10.774572 0.768417 -3.542802 10.123421 -0.219267 -2.918562 10.168700 -5.561408 -11.080263 15.945494 9.239957 -12.714532 -19.686199 -17.813103 -11.346509 -6.293537 -49.703735 -21.218960 -1.877871 -13.144697 -54.774200 0.236067 0.335323 -0.241181 0.755782 11.018990 20.890614 -7.532472 40.089783 20.403116 -3.088251 2.579782 23.512043 -1.844808 -0.375570 0.188226 -0.054556 +0.160669 1.615805 -0.088245 -1.853320 43.062630 -9.441301 -1.339475 -6.037842 -6.332682 -3.387012 0.132577 39.805664 -0.619465 0.109737 -0.177787 0.722688 0.471034 0.472999 -16.483078 3.285605 -30.935383 25.272814 -7.653162 33.403931 -0.400728 0.145437 0.068078 0.273476 -0.072611 0.136654 4.428743 -3.256482 10.213517 0.996265 -3.393944 10.690474 0.089975 -2.768482 11.277493 -5.710121 -11.815079 16.473843 10.322266 -13.455010 -20.496716 -17.237873 -14.124852 -6.098426 -50.826546 -24.112024 -0.599019 -13.688970 -57.544189 0.584880 0.330893 -0.263808 0.761597 9.987198 23.809050 -7.424174 38.840832 21.946421 -3.125399 2.746468 27.756496 -2.139348 -0.388964 0.203511 -0.066864 +0.154318 1.626315 -0.094638 -3.073774 44.850723 -9.905937 -0.344240 -5.578189 -6.716943 -1.911630 -0.279858 37.920002 -0.623508 0.096479 -0.165812 0.744080 0.513826 0.461181 -16.938362 3.848876 -30.790859 28.068054 -9.270862 36.143795 -0.402151 0.150942 0.079236 0.306245 -0.052972 0.110588 5.211053 -3.336648 9.509777 1.031199 -3.293776 11.254478 -0.178179 -2.707068 12.427032 -5.961352 -12.370652 16.709988 11.296601 -14.166090 -21.112555 -16.655561 -16.645897 -5.943945 -51.455486 -26.810942 0.572534 -13.033577 -60.670258 0.385723 0.345693 -0.273928 0.750689 8.647395 26.343460 -7.789784 38.213287 23.906502 -3.027874 2.377561 31.528460 -2.609058 -0.397251 0.200191 -0.074216 +0.148531 1.635633 -0.100803 -3.933380 46.278973 -9.955809 0.413590 -5.102113 -7.086916 -0.932157 -0.491077 35.874622 -0.639863 0.111243 -0.174512 0.760998 0.540621 0.437238 -17.193575 4.362242 -30.709711 30.442806 -10.772586 38.339657 -0.402071 0.133349 0.080059 0.331685 -0.029798 0.119525 6.140442 -3.352044 8.535958 0.901594 -3.103024 11.807942 -0.672497 -2.527911 13.692346 -6.163641 -12.825690 16.548044 12.354906 -14.784432 -21.978983 -15.088415 -18.759619 -6.019587 -52.421284 -29.914448 2.272311 -11.611681 -64.063637 -0.263262 0.338116 -0.257264 0.743823 7.017131 28.010439 -8.476720 38.743263 26.015669 -2.845664 1.119649 35.386250 -3.466334 -0.418539 0.190524 -0.071105 +0.142627 1.644654 -0.106625 -4.394501 47.968857 -9.604960 0.657915 -4.733649 -7.321080 0.089162 -0.752888 33.365192 -0.668674 0.165574 -0.183821 0.742590 0.521443 0.398544 -17.627085 4.568457 -30.288893 32.563927 -12.124274 39.766102 -0.385010 0.102899 0.073843 0.338087 0.019461 0.138895 6.942648 -3.350641 7.566299 0.700247 -2.982768 12.279763 -1.249782 -2.383368 14.820922 -6.096032 -13.441024 15.856439 13.158281 -15.428647 -22.558655 -13.408677 -20.584801 -6.537934 -52.518108 -33.455959 4.535246 -10.482761 -66.780449 -0.520075 0.292532 -0.255472 0.731951 5.890178 28.982708 -9.354383 39.226479 28.550785 -2.334633 -0.334999 38.468678 -4.334949 -0.444521 0.194979 -0.081779 +0.137206 1.653511 -0.112177 -4.691928 49.484642 -9.036269 0.941338 -4.341800 -7.423440 0.383917 -0.763143 30.667219 -0.694495 0.208821 -0.179007 0.735090 0.526543 0.351110 -17.716873 4.716155 -29.748976 33.810562 -13.147319 41.044502 -0.360803 0.067176 0.078932 0.368001 0.079686 0.134477 7.611152 -3.423563 6.156785 0.419732 -2.923985 12.849116 -1.851515 -2.331616 16.350416 -5.897556 -13.818178 14.803720 14.000675 -16.115679 -22.806025 -11.285778 -21.951818 -7.596064 -52.932182 -37.586761 7.357834 -7.134709 -67.640076 -2.259878 0.257978 -0.250388 0.700944 4.518273 29.397842 -10.628153 39.539623 31.923159 -1.339439 -2.295041 41.609447 -5.461801 -0.473009 0.181154 -0.101665 +0.132061 1.661358 -0.116892 -4.721579 50.519264 -8.231894 1.369676 -3.931972 -7.428536 0.069967 -0.589116 27.996649 -0.705249 0.243011 -0.159639 0.734859 0.538727 0.313279 -17.462400 4.917012 -29.297411 34.568932 -14.030864 42.485584 -0.340604 0.034988 0.090503 0.395314 0.141447 0.127457 7.829512 -3.335648 4.849782 0.209402 -2.813303 13.250191 -2.196557 -2.252837 17.614441 -5.549158 -14.082881 13.704345 14.663925 -16.709972 -22.696003 -8.531152 -23.391979 -8.679949 -53.343193 -41.482845 10.101558 -1.912550 -67.067848 -5.372011 0.229854 -0.244411 0.663624 2.932108 29.817005 -11.610174 39.405567 34.995018 -0.163858 -3.843818 44.598351 -6.436661 -0.494800 0.160975 -0.116155 +0.128070 1.668131 -0.121087 -4.765068 51.619850 -7.472770 1.687264 -3.538800 -7.139813 -0.021548 -0.550014 24.713989 -0.711897 0.259648 -0.139709 0.757639 0.578440 0.300162 -16.783701 4.947324 -28.501793 34.548111 -14.707168 43.973442 -0.337574 -0.001493 0.097800 0.436337 0.177332 0.123631 7.923903 -3.287674 3.454765 0.036565 -2.742622 13.537065 -2.399040 -2.254027 18.830299 -4.749619 -14.726138 12.635323 14.308443 -17.039587 -22.261341 -6.170968 -24.408869 -9.756115 -53.373894 -45.434513 12.881877 4.733017 -65.473183 -9.183408 0.214087 -0.222208 0.624443 0.880408 30.138102 -12.370649 39.587921 37.750633 1.172552 -6.238890 47.454464 -7.925097 -0.517609 0.118406 -0.120527 +0.124859 1.673492 -0.124551 -4.546903 52.472927 -6.440916 1.790508 -3.155471 -6.712024 0.006666 -0.538840 21.043997 -0.741445 0.317358 -0.127913 0.740768 0.552199 0.279518 -16.014681 4.871949 -27.506166 34.232586 -15.069905 44.868546 -0.301013 -0.040530 0.099281 0.454912 0.228842 0.111434 8.023895 -3.151315 2.042318 -0.236207 -2.600844 13.690130 -2.729212 -2.113617 19.842817 -4.128011 -15.161515 11.507362 13.993971 -17.594133 -21.337301 -3.516108 -24.910122 -10.827344 -53.465519 -49.066177 15.660485 10.845249 -62.916119 -12.373714 0.171895 -0.221116 0.588836 -0.983713 29.978006 -12.921232 39.739288 40.512497 2.811495 -8.581274 50.315239 -9.412786 -0.540438 0.094500 -0.153488 +0.121854 1.676808 -0.127705 -4.199746 53.300293 -5.104796 2.011855 -2.797463 -6.613676 -0.297071 -0.445910 17.846504 -0.766706 0.393060 -0.121096 0.698258 0.501681 0.214382 -15.122671 4.816261 -26.472750 33.415573 -15.000266 45.211437 -0.256473 -0.096737 0.093961 0.458889 0.304505 0.116285 8.007273 -2.930420 0.612796 -0.493445 -2.432881 13.695381 -2.954969 -1.909390 20.669956 -3.729801 -15.489372 10.222374 14.363081 -18.483309 -20.452068 -0.516053 -24.818974 -11.770927 -55.440075 -52.854946 19.578350 17.035805 -60.294605 -15.535601 0.114273 -0.199549 0.545407 -2.414251 29.132845 -13.523192 40.007385 43.564026 4.947254 -10.685788 52.179882 -10.543545 -0.563612 0.071504 -0.182300 +0.118274 1.679088 -0.130254 -3.258121 54.340790 -3.223927 1.884056 -2.521969 -6.641483 -0.738588 -0.356498 15.033443 -0.786429 0.462044 -0.113364 0.672532 0.466679 0.157387 -14.276792 4.649783 -25.241364 31.972466 -14.392402 44.932030 -0.219025 -0.165812 0.096303 0.466160 0.372005 0.135307 7.085906 -2.563354 -0.670349 -0.628186 -2.313606 13.572267 -2.657947 -1.830939 21.292379 -2.972504 -15.984257 8.863647 14.277975 -19.240900 -19.270519 2.247758 -24.691788 -12.692981 -57.466736 -56.847778 24.138208 21.543144 -57.074776 -17.199856 0.058151 -0.159590 0.499103 -3.120981 28.574865 -13.730799 39.697868 46.499565 6.885114 -13.931258 53.517982 -12.202740 -0.594531 0.029750 -0.197572 +0.115765 1.680051 -0.132402 -2.372653 54.892162 -1.302026 1.798462 -2.161704 -6.592886 -1.374662 -0.240132 12.139935 -0.785975 0.504077 -0.088770 0.659712 0.475048 0.084610 -13.029270 4.599431 -23.689720 29.901279 -12.982606 43.378571 -0.176936 -0.230933 0.113545 0.496891 0.453736 0.130870 6.270736 -2.257029 -2.202848 -0.801386 -2.127399 13.521660 -2.435039 -1.698844 22.225773 -2.369886 -16.387335 7.009543 14.367639 -20.225208 -18.367674 4.681623 -23.712393 -13.480686 -61.294563 -60.470791 29.778421 25.807856 -54.062775 -18.728111 0.013014 -0.118481 0.420013 -3.867907 27.760944 -14.162540 39.734589 49.959095 9.323121 -17.782619 54.002815 -14.106361 -0.620794 -0.021250 -0.204888 +0.112986 1.679949 -0.133680 -0.792905 55.117901 0.992292 1.331171 -1.825020 -6.295365 -2.043552 -0.140157 9.480446 -0.806420 0.542573 -0.069253 0.657416 0.492128 0.048487 -12.006227 4.464552 -21.888779 27.517517 -11.207448 40.990120 -0.151873 -0.275528 0.123679 0.536979 0.516732 0.115415 4.665720 -1.940511 -3.655426 -1.080963 -2.009114 13.416307 -2.087149 -1.627495 23.073221 -1.301061 -16.551044 5.809267 13.975609 -20.398928 -17.605257 7.058963 -22.867157 -14.088727 -64.752594 -63.495991 35.174774 29.102512 -50.911228 -19.560602 -0.026070 -0.111168 0.369820 -5.647641 27.745802 -14.611363 40.926132 53.300507 11.981313 -22.539183 52.508587 -16.325834 -0.650313 -0.053849 -0.229089 +0.110443 1.678638 -0.135065 0.689970 55.309681 3.017497 0.712117 -1.525772 -5.918084 -2.489396 -0.095539 7.264932 -0.796555 0.562162 -0.039260 0.664602 0.518503 -0.000107 -10.791027 4.340140 -19.392477 24.839870 -8.935286 36.903790 -0.134061 -0.318434 0.134922 0.569795 0.577360 0.106810 3.188261 -1.623040 -4.846014 -1.245507 -1.824696 13.449485 -1.734775 -1.503938 23.828091 -0.655398 -16.558241 4.449826 14.372648 -20.930107 -17.078518 9.612616 -22.311209 -14.395437 -66.392403 -65.933136 39.015152 32.935078 -49.109322 -21.000660 -0.040477 -0.070331 0.312961 -6.989347 28.121992 -15.001750 39.929863 56.287239 13.442595 -25.634418 50.352642 -17.219332 -0.663450 -0.102301 -0.232946 +0.106840 1.676070 -0.136416 2.301018 55.495644 5.225068 0.136649 -1.301191 -6.003906 -3.139930 -0.030604 5.361740 -0.791643 0.598247 -0.007455 0.636454 0.498858 -0.056506 -9.415196 4.088541 -16.926962 21.280912 -6.608449 32.432419 -0.101092 -0.366363 0.156036 0.573975 0.645436 0.102147 1.486730 -1.276938 -5.811574 -1.339177 -1.625680 13.308718 -1.164265 -1.270748 24.099091 0.122562 -16.696753 3.312419 13.982677 -21.384287 -15.820205 11.485244 -22.223478 -14.397874 -67.658150 -67.822037 42.112904 35.702618 -47.122803 -21.767176 -0.081452 -0.054435 0.259550 -8.356370 28.885790 -14.853574 37.338409 58.112141 13.393728 -28.892778 48.827816 -18.279493 -0.682336 -0.132696 -0.248042 +0.104332 1.673137 -0.138227 3.085291 55.201031 6.583440 -0.182547 -1.107644 -6.131724 -3.486523 -0.002874 3.804310 -0.774682 0.613866 0.017077 0.615278 0.481965 -0.093948 -7.659652 3.835726 -14.356615 17.591459 -4.572694 27.843292 -0.079045 -0.387056 0.167921 0.568818 0.686795 0.096004 0.669106 -0.811065 -6.553516 -1.355054 -1.195394 13.194625 -0.869005 -0.763251 24.211855 0.569497 -17.043695 2.612498 14.208424 -21.997995 -15.270849 12.650104 -22.158976 -14.445641 -70.607552 -69.651314 46.479816 36.791348 -44.981388 -21.559603 -0.098274 -0.040712 0.222557 -9.119526 28.959354 -14.593018 34.873951 59.328346 13.131479 -30.959402 48.125580 -18.858667 -0.681409 -0.148675 -0.252443 +0.101685 1.669944 -0.139328 3.440435 54.120106 7.253881 -0.327975 -0.966965 -6.204790 -3.845398 0.030914 2.937017 -0.768880 0.620936 0.033052 0.599479 0.476993 -0.131315 -5.748344 3.571602 -11.632558 13.994715 -2.931813 23.635168 -0.055769 -0.409885 0.177687 0.576763 0.718004 0.079172 0.054127 -0.220166 -7.222698 -1.366285 -0.596868 13.257779 -0.665200 -0.087652 24.573917 0.785538 -17.182543 1.930159 14.138578 -22.439123 -14.657471 13.215646 -22.514431 -14.361300 -72.916046 -71.137932 49.822723 38.065071 -42.924686 -21.498182 -0.108553 -0.025506 0.186367 -9.584297 29.608854 -14.482474 32.095570 60.248268 12.352732 -31.489964 47.351395 -18.650467 -0.685298 -0.170123 -0.262035 +0.098765 1.667765 -0.140795 3.705465 52.135876 7.563731 -0.634769 -0.985742 -6.384923 -3.967617 0.028612 2.851323 -0.733407 0.593263 0.055491 0.613572 0.508526 -0.152162 -4.228597 3.184979 -9.141521 10.468566 -1.651037 19.803923 -0.055230 -0.414818 0.191513 0.586018 0.730800 0.069975 -0.178917 0.590098 -7.646791 -1.499009 0.337605 13.456400 -0.790496 0.859650 24.964397 0.559576 -16.949734 1.702214 14.728318 -22.738453 -14.576132 13.943546 -22.919796 -14.628919 -73.628769 -72.062859 51.199928 37.536575 -41.313354 -20.662922 -0.086744 0.005011 0.156555 -9.482147 30.307566 -14.418263 30.040119 61.405636 11.847075 -31.358892 46.619648 -18.184090 -0.672619 -0.195990 -0.244785 +0.095412 1.666003 -0.142819 3.897967 49.956551 7.945073 -0.835268 -0.994800 -6.756844 -4.159813 0.035783 2.472673 -0.761857 0.639733 0.057832 0.585431 0.472841 -0.191228 -3.390173 2.775713 -7.327933 7.811741 -0.870193 16.256784 -0.041512 -0.421091 0.191806 0.583036 0.775388 0.068135 0.157326 1.451674 -7.918721 -1.763887 1.283587 13.637240 -1.321790 1.970589 25.279144 0.132657 -17.040478 1.363859 15.331385 -23.328138 -15.201108 14.069064 -23.202278 -14.966962 -74.900719 -72.624817 52.846272 36.863003 -40.433186 -20.076008 -0.111019 -0.022263 0.165581 -9.620315 30.997015 -14.753606 29.495163 62.514088 11.926205 -30.272646 45.762093 -17.296398 -0.689332 -0.170738 -0.273464 +0.091653 1.665427 -0.145888 4.312086 48.742527 8.651112 -1.267901 -1.120650 -7.363928 -3.927954 -0.017736 2.007799 -0.784652 0.667005 0.053832 0.589126 0.479262 -0.204507 -3.074463 2.334141 -6.427413 6.136187 -0.500483 13.593515 -0.039706 -0.431810 0.183195 0.601509 0.798533 0.070578 0.326973 1.923448 -8.098138 -1.979100 1.878178 13.755208 -1.468070 2.656774 25.650402 -0.320981 -17.012539 0.838655 15.417466 -23.638208 -15.848079 13.990120 -23.491034 -15.341755 -77.930733 -72.656303 55.037014 36.375736 -39.230991 -19.693182 -0.123361 -0.026028 0.163329 -9.793149 31.793833 -15.295434 29.589550 63.675911 12.513328 -28.640936 45.407253 -16.345547 -0.701877 -0.169262 -0.283468 +0.088002 1.665125 -0.149236 4.501782 47.991787 9.502778 -1.567154 -1.301594 -8.329415 -3.535054 -0.081842 1.741989 -0.802597 0.684757 0.039981 0.602603 0.494486 -0.214386 -3.045985 2.127106 -6.651189 5.411744 -0.371149 12.115112 -0.035919 -0.454349 0.175064 0.621735 0.803925 0.082878 0.959851 2.374315 -8.147620 -2.129027 2.486639 13.625222 -1.678009 3.319854 25.686594 -0.743208 -17.362083 0.332323 15.154826 -24.157352 -16.242849 13.197869 -23.827110 -15.367462 -84.174477 -72.335609 59.836182 36.009281 -38.454174 -19.556496 -0.131846 -0.004850 0.152749 -10.089988 32.153591 -16.014200 31.557972 64.344025 14.306068 -25.902817 45.694057 -15.074304 -0.716068 -0.186516 -0.277857 +0.085864 1.664358 -0.152056 4.357199 48.056946 10.202083 -1.541206 -1.458974 -9.371375 -3.338039 -0.145400 1.436439 -0.790205 0.650547 0.035060 0.640863 0.551252 -0.195058 -2.866284 1.915725 -7.251720 5.079064 -0.357461 11.291877 -0.051994 -0.445918 0.171395 0.646115 0.779552 0.081174 2.122202 2.365496 -8.087042 -2.359376 2.746652 13.304601 -2.086706 3.539975 25.337971 -1.233855 -17.532305 0.141490 15.119608 -24.367640 -17.006695 12.299326 -24.492140 -15.525284 -87.916679 -71.367073 61.343941 34.485294 -36.580051 -18.552229 -0.104693 0.010584 0.144377 -10.357691 32.372093 -16.816174 35.862228 64.677437 17.374866 -22.408247 45.315441 -13.420506 -0.707343 -0.200197 -0.252300 +0.083659 1.663486 -0.152875 4.481395 48.717144 11.229159 -1.506186 -1.746563 -10.662601 -3.187374 -0.194939 1.672659 -0.790696 0.653744 0.050814 0.622708 0.528947 -0.202562 -3.029966 1.665542 -8.089219 5.585807 -0.538036 10.837866 -0.044540 -0.434963 0.185036 0.634671 0.792574 0.064563 2.281876 2.203046 -8.005975 -2.511377 2.668709 12.764715 -1.892890 3.375859 24.415306 -1.564923 -17.423315 0.330084 15.106267 -24.453798 -16.821606 11.703501 -25.013308 -15.621318 -90.749596 -69.434044 60.911686 32.497971 -34.802826 -17.526775 -0.104625 -0.021541 0.152061 -9.781490 32.639088 -17.248283 41.267487 64.379097 21.050037 -17.403309 45.503872 -11.094868 -0.706645 -0.182058 -0.271120 +0.081433 1.662611 -0.152316 4.537762 49.026669 11.842216 -1.513544 -1.891543 -11.292871 -2.788465 -0.261638 1.423785 -0.774746 0.612598 0.033162 0.658000 0.571083 -0.164493 -3.255824 1.469867 -8.872176 6.203793 -0.732421 11.028582 -0.070961 -0.409952 0.169279 0.642828 0.742670 0.071686 2.249299 2.036830 -7.920214 -2.575247 2.564997 12.438123 -1.540122 3.139765 23.828650 -2.026118 -17.326401 0.966563 15.329157 -24.199612 -17.587408 10.904853 -25.179010 -15.937105 -92.720840 -67.124458 58.881336 30.363918 -32.735668 -16.416487 -0.068388 -0.006885 0.166931 -9.647424 33.000530 -18.185049 46.914017 63.340549 24.205454 -11.747767 45.353100 -8.513728 -0.685879 -0.183125 -0.241217 +0.079192 1.661821 -0.150866 4.882562 49.088245 12.560188 -1.646205 -1.994519 -11.730253 -2.593798 -0.276948 1.103996 -0.783290 0.629875 0.025744 0.622093 0.511723 -0.169862 -3.661989 1.384174 -9.660918 6.778508 -0.931180 11.547165 -0.064407 -0.396727 0.162346 0.609184 0.738423 0.071848 1.721237 2.052161 -7.859854 -2.630929 2.439674 12.125605 -1.150576 2.843761 22.986265 -2.266062 -17.056347 1.921646 15.527466 -23.977873 -17.125113 10.585032 -25.467415 -16.166025 -92.096764 -64.311882 54.587063 27.116297 -32.591377 -15.272180 -0.074578 -0.027446 0.194861 -8.040195 34.027721 -18.237406 52.058891 60.867493 25.269495 -6.801988 44.892387 -6.477385 -0.679810 -0.155272 -0.259965 +0.077080 1.660764 -0.150194 4.891163 49.298996 12.903920 -1.373117 -2.050375 -12.124472 -2.788312 -0.301026 0.887262 -0.781020 0.581281 -0.000643 0.655208 0.545500 -0.116903 -3.786401 1.322249 -10.318563 7.443825 -1.102855 11.907032 -0.095816 -0.355242 0.154380 0.608799 0.674809 0.073234 1.653304 2.060060 -7.563870 -2.557212 2.350304 11.908047 -0.815841 2.471697 22.056047 -2.351642 -17.028824 3.059626 15.872387 -23.246794 -17.891459 9.994926 -25.295576 -16.630726 -90.056297 -61.521477 49.970879 21.031487 -34.317795 -13.115070 -0.034842 -0.041571 0.239237 -6.797518 34.856380 -19.077749 56.475948 57.286404 24.898460 0.848842 43.729294 -3.297004 -0.665992 -0.133079 -0.240759 +0.075581 1.660223 -0.149290 5.156370 49.299538 13.119983 -1.497503 -2.198920 -12.268657 -2.729464 -0.327182 1.159377 -0.783565 0.555791 -0.023744 0.663726 0.532889 -0.048060 -4.328371 1.219764 -10.495923 8.310390 -1.310449 12.102896 -0.133338 -0.295499 0.140272 0.577394 0.610945 0.086199 1.366414 2.158886 -7.040232 -2.427647 2.258941 11.764637 -0.494538 2.209458 20.906759 -2.444399 -17.329126 4.586859 16.052788 -22.484980 -18.733454 9.007660 -25.980270 -16.963682 -86.752937 -58.920528 45.109226 13.114853 -35.913803 -9.907279 -0.009002 -0.092468 0.312361 -4.655673 36.298157 -18.884190 57.715847 52.779709 21.508251 7.616702 42.152321 -0.713929 -0.646352 -0.076203 -0.233521 +0.074039 1.660145 -0.148566 5.713187 49.824459 13.451518 -1.743251 -2.458213 -12.548515 -2.618566 -0.363211 1.814877 -0.786483 0.525021 -0.054097 0.661560 0.515255 -0.009823 -4.868898 1.036621 -10.419855 9.133850 -1.507971 12.084392 -0.162641 -0.232021 0.127880 0.544656 0.556157 0.089013 1.125299 2.039922 -6.385442 -2.395841 1.977829 11.655608 -0.446087 1.867340 19.737991 -2.823179 -17.366270 6.628657 17.273310 -21.811930 -19.744745 8.735539 -26.703094 -17.844551 -84.353661 -56.155235 40.941517 4.522118 -34.931519 -6.049644 0.025305 -0.138276 0.387438 -1.636153 37.035191 -18.094498 59.075771 48.025200 17.861216 13.302143 39.757851 1.084397 -0.624654 -0.011383 -0.230898 +0.073083 1.659351 -0.146771 6.056174 49.621754 13.558562 -1.633479 -2.515436 -12.523724 -3.137474 -0.346319 2.238423 -0.759760 0.460495 -0.074241 0.667497 0.518837 0.034681 -5.284434 1.105066 -10.308366 9.520355 -1.525271 12.103705 -0.192411 -0.162917 0.120529 0.511170 0.485184 0.083934 1.281461 1.884225 -5.767192 -2.425411 1.804386 11.461668 -0.875435 1.796514 18.503225 -3.681761 -17.133041 8.797185 18.042494 -21.308290 -20.588692 7.917057 -27.224052 -18.161848 -81.689880 -52.850731 36.326008 -3.390332 -32.716526 -2.646130 0.077336 -0.172603 0.441501 0.328119 37.369125 -16.871666 60.195213 43.979336 15.223101 16.415321 36.569405 1.750872 -0.584668 0.040649 -0.207953 +0.072225 1.657910 -0.144242 6.222787 49.329704 13.502449 -1.433889 -2.583524 -12.568765 -3.683424 -0.320416 2.849767 -0.720465 0.402833 -0.080576 0.651156 0.491172 0.055143 -5.537789 1.240691 -10.269406 9.959090 -1.563341 12.347569 -0.216733 -0.099602 0.118456 0.456482 0.427040 0.081281 1.626643 1.603362 -4.958027 -2.575586 1.579837 11.144292 -1.625325 1.762221 17.042660 -4.523530 -16.530920 10.625171 18.984337 -20.977682 -21.005888 5.460007 -28.200312 -17.344046 -77.952995 -49.019753 30.493645 -8.920753 -29.659513 -0.577901 0.128504 -0.197832 0.493621 3.389914 37.707573 -14.546169 60.476727 39.951435 12.292974 17.520931 33.188557 1.663699 -0.540439 0.090417 -0.189045 +0.072579 1.656648 -0.141967 6.068663 48.982750 13.092708 -1.275038 -2.676178 -12.624972 -3.994640 -0.311980 3.708781 -0.688832 0.333421 -0.100070 0.683049 0.515016 0.101976 -5.683858 1.390805 -10.201271 10.577806 -1.652842 12.895468 -0.253211 -0.046870 0.110512 0.435673 0.347642 0.086127 2.665548 1.094023 -4.339436 -2.886705 1.315713 10.892720 -2.841803 1.705405 16.039413 -5.164535 -15.548826 12.096003 19.783546 -20.322725 -21.678541 2.952286 -28.455566 -16.529682 -74.839020 -45.312260 25.573900 -12.479416 -25.392401 0.484022 0.196305 -0.187884 0.541870 5.444046 37.254150 -12.769888 62.033958 36.442944 10.233200 15.985066 29.018864 0.743560 -0.504401 0.107433 -0.153911 +0.072313 1.654972 -0.139609 5.475095 48.362885 12.382147 -0.824226 -2.812631 -13.001430 -3.978670 -0.307449 5.025348 -0.661843 0.300261 -0.109850 0.671723 0.496168 0.119168 -5.375193 1.652507 -10.291723 10.698443 -1.700049 13.704402 -0.273456 -0.010510 0.099592 0.399161 0.302346 0.096335 3.733293 0.557089 -3.720694 -3.145124 1.017859 10.615686 -3.931014 1.646758 15.080782 -5.588854 -14.606967 12.909463 19.854031 -19.796961 -21.773750 -0.130361 -28.346601 -15.149776 -71.731926 -41.652863 20.817795 -13.233912 -21.507406 0.455692 0.224275 -0.194925 0.574062 7.195993 36.783283 -10.976293 62.795464 33.251778 8.260902 13.735017 25.166000 -0.040252 -0.472748 0.135788 -0.134973 +0.071053 1.653111 -0.136131 5.365870 47.606838 11.957332 -0.538040 -3.057651 -13.304878 -4.192593 -0.304740 6.399856 -0.650173 0.252107 -0.115379 0.677482 0.490095 0.172096 -5.172139 1.813432 -10.405328 10.582556 -1.750540 14.726678 -0.299217 0.050152 0.097882 0.372158 0.239246 0.079847 3.885468 0.141295 -2.767048 -3.308509 0.747439 10.234798 -4.435966 1.553199 13.910095 -6.260769 -14.032915 14.104314 19.477415 -19.237778 -22.176252 -3.312828 -27.336796 -13.724944 -69.054184 -37.969772 16.503103 -12.997993 -18.359997 0.165917 0.270593 -0.237211 0.626109 8.999011 36.399685 -9.411306 63.235405 29.776789 6.474898 13.439345 20.425074 -0.066040 -0.444366 0.178019 -0.131684 +0.070421 1.649330 -0.132280 4.824483 46.797722 11.392849 -0.083983 -3.394823 -14.077321 -4.293402 -0.300665 8.456056 -0.634155 0.229818 -0.122591 0.656022 0.450906 0.187335 -4.734184 2.077147 -10.795070 10.579069 -1.847365 15.975374 -0.309027 0.081003 0.093228 0.329289 0.196039 0.084422 4.108383 -0.183911 -1.766162 -3.243842 0.505394 9.733383 -4.532923 1.434235 12.593848 -7.003399 -13.480977 14.350963 18.841665 -19.048658 -22.202625 -6.427839 -25.577593 -11.991044 -67.157104 -34.113861 12.289431 -11.049267 -17.101004 -0.551275 0.293133 -0.251012 0.659670 11.165059 35.918949 -7.724825 62.905212 26.482115 5.093244 12.972432 14.852954 0.108594 -0.419988 0.206679 -0.124221 +0.068262 1.645043 -0.127798 4.175603 45.557297 10.881368 0.448597 -3.728263 -15.026337 -4.297830 -0.260523 10.802460 -0.614247 0.221575 -0.113740 0.599972 0.372359 0.181538 -4.251351 2.433985 -11.365546 10.651768 -1.925857 17.210424 -0.291211 0.104595 0.103873 0.267363 0.181165 0.073371 4.026907 -0.312265 -0.623641 -3.172777 0.416439 9.113387 -4.541625 1.421509 11.086587 -7.507260 -12.729448 14.226683 18.121353 -18.877125 -21.256618 -9.175915 -23.504866 -10.361178 -65.151901 -30.284336 8.537227 -9.121081 -16.351141 -1.149289 0.294063 -0.280362 0.676108 13.987885 34.725685 -5.470861 61.839397 23.133219 3.524296 11.366380 10.243397 0.161910 -0.396158 0.240859 -0.135098 +0.065062 1.640641 -0.122517 3.412129 43.764992 10.115116 0.985803 -4.085879 -16.042143 -4.126146 -0.223476 13.661530 -0.613642 0.220927 -0.121255 0.561487 0.298364 0.202701 -3.609402 2.853647 -11.758275 10.677591 -1.968582 18.319479 -0.297043 0.129127 0.095936 0.211727 0.141164 0.080597 3.531725 -0.253081 0.892367 -3.065955 0.415709 8.368942 -4.364793 1.486223 9.405380 -7.611533 -12.066051 14.440909 17.307844 -18.250181 -20.697237 -11.348995 -20.444183 -9.172819 -63.677010 -26.558044 5.366391 -6.893565 -15.402795 -1.734634 0.302791 -0.301576 0.724223 15.546034 32.418419 -3.771429 61.089897 19.951551 2.112639 10.172945 6.662013 0.296893 -0.378721 0.272346 -0.147324 +0.062703 1.635013 -0.117283 2.547572 41.254810 9.590787 1.434347 -4.510625 -17.496738 -3.671793 -0.182095 17.110561 -0.587604 0.239457 -0.098354 0.486555 0.185531 0.202223 -3.313914 3.312979 -12.456188 11.156573 -2.086648 19.510107 -0.268126 0.131424 0.100042 0.137139 0.139845 0.078573 3.180734 -0.130206 2.323437 -3.089445 0.572474 7.443666 -4.492903 1.658461 7.478240 -7.205336 -11.211704 13.523434 15.947338 -17.675100 -18.471857 -13.653336 -16.838743 -8.284184 -61.181000 -22.719866 2.679110 -5.590855 -13.611327 -1.902488 0.279948 -0.316662 0.723500 17.166412 29.084427 -2.380426 59.493000 16.912361 0.801035 8.886380 3.304665 0.423479 -0.351249 0.285523 -0.167323 +0.059131 1.630016 -0.112290 1.213431 38.326046 8.412236 2.212956 -4.774106 -19.006292 -3.330813 -0.102043 21.463533 -0.549878 0.203116 -0.101125 0.470505 0.157558 0.225149 -2.369908 3.889864 -12.674294 11.299666 -2.080574 20.550905 -0.277710 0.143380 0.098707 0.092169 0.089359 0.094967 3.141000 -0.008211 4.258471 -3.003833 0.843278 6.515022 -4.620874 1.877322 5.577638 -6.824768 -10.422808 13.283290 14.911944 -16.659822 -17.575895 -14.880026 -12.994343 -7.629478 -59.113651 -19.071966 0.607224 -4.753996 -11.675690 -1.889405 0.294586 -0.296074 0.733408 16.979078 25.233715 -2.003001 58.096233 14.364386 -0.510373 7.698509 1.706884 0.453945 -0.324445 0.283107 -0.142486 +0.053975 1.625870 -0.106797 -0.227933 35.157028 6.861727 3.194799 -4.878402 -20.666231 -2.867561 0.027170 26.923565 -0.537782 0.179553 -0.107601 0.476880 0.162012 0.263674 -0.870204 4.567334 -12.544567 11.073423 -1.961666 21.739981 -0.298687 0.157751 0.097679 0.076028 0.051865 0.112071 2.805073 0.195785 6.161027 -2.921648 1.150901 5.961303 -4.623248 2.137849 4.354261 -5.903542 -9.686723 13.038357 14.175903 -15.188299 -17.623960 -15.228307 -9.128397 -7.554036 -56.767712 -16.037092 -0.813273 -4.627177 -9.664286 -1.740720 0.297891 -0.300012 0.754379 15.820862 21.832270 -2.592506 56.321861 12.903458 -1.278687 6.751014 -0.140766 0.521406 -0.316811 0.291446 -0.127856 +0.045673 1.622727 -0.101774 -1.307575 31.504532 5.101419 4.136148 -4.640971 -22.067869 -2.598397 0.350302 32.738289 -0.563362 0.161129 -0.127968 0.494197 0.179267 0.322679 0.685926 5.363585 -12.062779 10.674849 -1.765763 23.466158 -0.328965 0.191945 0.090683 0.080065 0.005377 0.112212 1.624512 0.736497 8.313964 -2.786476 1.541635 5.643032 -4.202678 2.522297 3.509857 -5.044995 -9.162097 13.436290 13.404222 -13.516983 -18.700151 -15.006967 -5.872342 -7.430754 -54.737816 -13.181705 -1.995807 -4.067081 -8.022627 -1.679808 0.306207 -0.344855 0.806030 14.090717 19.669712 -3.132192 53.779202 11.851755 -1.879015 6.290861 -1.316035 0.559270 -0.321668 0.327179 -0.136427 +0.038062 1.621133 -0.098000 -2.539107 28.322392 2.833482 4.872251 -4.300162 -23.150055 -1.660327 0.401590 38.239227 -0.578022 0.133079 -0.154250 0.524875 0.209181 0.383968 2.411171 5.959274 -10.860471 10.297550 -1.562141 24.708605 -0.363893 0.226103 0.082705 0.082651 -0.050679 0.124605 1.081031 1.220703 11.061692 -2.509348 2.084770 5.352878 -3.891179 3.074405 2.609147 -4.580213 -8.891906 14.238051 12.953568 -12.245547 -20.158567 -15.471665 -3.481658 -7.349738 -52.073566 -10.683299 -2.900753 -3.261326 -6.653798 -1.618655 0.323486 -0.370119 0.855304 12.743415 17.718288 -3.151638 49.721561 10.354803 -2.680617 6.189994 -1.063249 0.490560 -0.322229 0.356002 -0.125303 +0.031166 1.619173 -0.094581 -3.576508 25.685055 0.670709 5.226413 -4.126737 -24.746094 -0.384913 0.198002 44.123356 -0.585848 0.104052 -0.175516 0.532001 0.226030 0.414568 3.902846 6.359382 -9.497768 10.259862 -1.487704 25.945204 -0.382850 0.248775 0.077002 0.080979 -0.092923 0.126200 0.738732 1.671333 13.854104 -2.295930 2.724071 5.140554 -3.725916 3.717514 1.736037 -4.080506 -9.088213 14.627869 12.427448 -11.449990 -21.170031 -15.863491 -1.992991 -7.198258 -49.243698 -8.534172 -3.418180 -2.403185 -4.782040 -1.463233 0.332926 -0.390102 0.882469 11.418810 16.064615 -2.736591 45.485100 8.325389 -3.542760 5.982856 0.200104 0.376738 -0.320224 0.379267 -0.118529 +0.025399 1.616560 -0.089990 -4.476938 22.734089 -1.434413 5.619981 -3.726193 -26.316362 0.458103 0.125947 49.857468 -0.585286 0.097488 -0.174620 0.529123 0.229392 0.428094 5.274849 6.652184 -7.818714 10.122679 -1.367846 27.086338 -0.384313 0.257991 0.081860 0.079427 -0.097722 0.123479 0.380052 2.073292 15.931518 -2.079429 3.274668 5.250958 -3.499412 4.270154 1.402892 -3.867792 -8.653831 14.407247 12.065282 -10.680009 -21.544882 -16.196476 0.124349 -7.140453 -46.873825 -6.247642 -4.067607 -1.032439 -3.984376 -1.395412 0.325300 -0.407583 0.885460 10.699325 14.104102 -3.202756 40.436977 7.522338 -3.815850 5.914464 0.539262 0.303880 -0.319828 0.391584 -0.121211 +0.020655 1.613395 -0.084609 -5.093108 20.353559 -3.235485 5.517555 -3.530102 -28.271029 1.613774 -0.235199 55.886833 -0.548762 0.069867 -0.163076 0.533215 0.242867 0.429141 5.972101 6.726998 -6.121060 10.821815 -1.510506 27.929968 -0.387530 0.254599 0.086945 0.072083 -0.106932 0.128263 0.033118 2.417176 17.530741 -1.996534 3.811437 5.452229 -3.413073 4.751803 1.222151 -3.637442 -8.410713 13.970202 12.022425 -10.333411 -21.116890 -15.794313 2.174526 -6.808105 -45.186874 -4.069597 -4.732700 0.800223 -3.966060 -1.338225 0.334250 -0.376853 0.863421 9.464603 12.674188 -3.069733 35.959827 6.309332 -4.051636 6.294337 2.371308 0.220190 -0.304255 0.369474 -0.099351 +0.014828 1.611675 -0.078620 -5.105045 17.429916 -5.118362 5.301467 -3.021235 -29.252670 2.287838 -0.272677 60.713123 -0.526412 0.040705 -0.153377 0.543770 0.266556 0.440963 6.468807 6.813415 -4.084388 10.750420 -1.387013 28.837938 -0.397870 0.267213 0.090966 0.075976 -0.116623 0.121134 -1.099141 3.081818 19.142580 -2.032782 4.302707 5.847382 -3.151303 5.194668 1.248127 -3.378396 -7.691559 13.719065 12.371578 -9.482788 -21.355881 -15.105375 4.480360 -6.642928 -43.629379 -1.998153 -5.356958 2.524998 -4.507165 -1.314576 0.348870 -0.370547 0.859371 8.503178 11.524672 -3.270375 31.654100 5.848723 -4.026677 5.530474 2.325818 0.206212 -0.291550 0.364538 -0.091793 +0.010387 1.609951 -0.072609 -5.345058 14.688125 -6.975748 5.474342 -2.406427 -30.006945 2.088737 0.141902 64.787849 -0.519593 0.028243 -0.154257 0.555017 0.280568 0.453635 6.893890 7.053107 -2.387663 11.187949 -1.449732 30.159697 -0.403435 0.263138 0.089436 0.079694 -0.127255 0.124990 -1.460409 3.397153 20.199087 -2.119491 4.680070 6.417265 -3.262808 5.568897 1.606546 -3.255279 -7.043422 13.304834 12.098211 -8.700166 -21.440773 -14.071699 7.722288 -6.880201 -42.371433 -0.171041 -5.995424 3.715330 -6.530705 -1.455800 0.353388 -0.351580 0.856379 6.268089 10.051180 -3.797478 28.483416 5.984369 -3.853035 4.664458 0.974154 0.201976 -0.288708 0.349797 -0.084637 +0.007854 1.610060 -0.066421 -5.648067 12.173503 -8.847096 5.375130 -1.763657 -30.022617 1.978590 0.499626 67.122322 -0.545612 0.079110 -0.150612 0.511550 0.204792 0.434366 7.434772 7.277781 -0.486197 11.442039 -1.431772 31.150515 -0.382807 0.266754 0.086399 0.052911 -0.094596 0.117976 -1.047283 3.538762 21.477217 -2.243210 5.087854 6.822426 -3.809104 6.064154 1.529290 -3.932249 -5.776592 13.389167 12.846866 -8.462846 -21.006618 -12.809849 10.142777 -6.662536 -41.667118 2.006035 -6.584204 6.149600 -7.207947 -1.508674 0.333018 -0.381019 0.882698 4.741908 8.771924 -3.687470 24.915491 5.407989 -3.852806 4.101911 0.939659 0.237225 -0.292536 0.379015 -0.127357 +0.004693 1.610511 -0.059908 -5.553627 10.545307 -10.150057 4.915453 -1.486096 -30.243385 1.034615 1.266122 67.861649 -0.543040 0.082356 -0.129364 0.478734 0.184843 0.395283 7.701634 7.322996 1.120506 11.417393 -1.347143 31.755268 -0.360893 0.268556 0.106343 0.046299 -0.057175 0.089449 -0.601671 3.804550 21.464237 -2.410040 5.565807 7.625996 -4.264804 6.574021 2.422313 -4.367423 -5.561579 12.944975 13.121475 -8.732081 -20.762899 -11.872951 10.754381 -6.306997 -40.254539 3.484143 -6.836795 8.056922 -7.418377 -1.473992 0.321282 -0.411070 0.866785 4.001138 7.251029 -3.342404 21.593536 4.211805 -3.882658 2.409232 1.797303 0.239636 -0.295353 0.396028 -0.149704 +0.001695 1.612450 -0.052869 -5.373340 9.269474 -11.470525 4.428051 -1.365638 -30.148535 -0.642694 2.402830 67.441689 -0.534814 0.107326 -0.118022 0.450683 0.145472 0.360703 8.120428 7.188668 2.995039 10.812201 -1.088163 31.921980 -0.344101 0.258554 0.111191 0.026410 -0.025023 0.093232 -0.100794 3.927018 21.314911 -2.640380 5.895441 8.416068 -4.807360 6.954647 3.320374 -4.931509 -5.015524 12.786389 13.782091 -9.102973 -20.026529 -10.843379 10.628262 -5.400447 -38.944599 5.289118 -7.127090 9.904167 -8.429241 -1.579623 0.306926 -0.404736 0.857221 3.611411 6.399340 -2.556140 18.077679 2.872836 -3.705589 1.466547 2.345926 0.274155 -0.293713 0.397912 -0.157386 +-0.002533 1.614630 -0.045279 -5.086693 8.736547 -12.279838 3.726744 -1.454920 -30.136715 -2.490851 3.443774 65.184624 -0.528844 0.141864 -0.113646 0.416009 0.100414 0.310043 8.414451 7.136766 4.190736 10.623656 -0.981190 32.101711 -0.320516 0.236213 0.107548 0.007305 0.018829 0.103387 0.150617 4.007604 20.791025 -2.994122 6.005545 9.158159 -5.350822 7.082654 4.278436 -5.295396 -4.060397 11.986820 15.227148 -9.325465 -19.372549 -9.056774 11.164083 -4.787869 -37.750969 6.504941 -7.302257 11.679968 -9.863174 -1.795802 0.283280 -0.378539 0.840487 3.347882 5.020547 -2.222383 15.141552 2.119232 -3.431368 0.960813 2.482885 0.304130 -0.293330 0.391712 -0.164680 +-0.007072 1.618330 -0.037037 -4.574328 8.190018 -13.558673 2.755128 -1.544344 -28.792286 -4.203548 4.239782 61.150776 -0.568483 0.195638 -0.121904 0.369375 0.036844 0.272950 8.547026 7.038483 6.083698 10.264359 -0.804472 32.223774 -0.292347 0.227951 0.105588 -0.006923 0.060853 0.095513 0.115850 4.215330 20.639395 -3.419868 6.087671 10.035092 -5.856781 7.230531 5.247694 -5.462580 -3.812564 11.649525 16.199734 -9.598606 -19.389700 -8.072838 11.716550 -4.692099 -36.073376 7.265125 -7.217174 14.116966 -11.897864 -2.226597 0.248184 -0.409151 0.855543 2.918489 4.261512 -1.706414 12.424563 1.498610 -3.087065 1.254789 1.707770 0.349793 -0.311587 0.422375 -0.206980 +-0.011313 1.622272 -0.029396 -4.255844 7.941957 -14.780095 1.861434 -1.673558 -27.223433 -6.228176 4.854126 55.953262 -0.587504 0.220829 -0.118198 0.356204 0.019289 0.270622 9.028520 6.898214 7.874267 10.045667 -0.652826 32.229458 -0.284912 0.230328 0.105408 -0.005869 0.083497 0.089263 0.510640 4.188280 20.285748 -3.885718 6.199993 11.005700 -6.553563 7.363367 6.472535 -5.153725 -4.140232 11.177868 16.760815 -9.684392 -19.926695 -7.825684 12.028406 -4.898031 -33.660114 7.600220 -6.873980 16.058943 -14.039983 -2.725705 0.229814 -0.434820 0.862424 2.425594 3.497288 -1.279037 10.274022 0.985408 -2.698193 2.102755 0.730417 0.348464 -0.320857 0.439757 -0.229002 +-0.015207 1.626714 -0.020513 -4.133640 7.775108 -16.066874 1.016259 -1.680784 -24.754183 -7.782279 4.954781 49.632782 -0.602724 0.231635 -0.125577 0.334359 -0.002994 0.252413 9.620517 6.863173 9.653393 10.166613 -0.585444 32.524147 -0.275121 0.229829 0.100303 -0.009738 0.090823 0.078906 0.596255 4.280644 20.244202 -4.089829 6.214974 11.609694 -6.775900 7.392162 7.049859 -5.379565 -4.175507 11.369206 16.904623 -9.879606 -19.786856 -7.276313 12.442415 -4.864797 -32.285316 8.225782 -6.806865 19.245926 -15.601656 -3.279148 0.223029 -0.447532 0.868091 1.792449 3.360036 -0.724649 8.254638 0.454911 -2.409374 2.880080 -1.335449 0.300510 -0.323989 0.452285 -0.246231 +-0.018381 1.630005 -0.011702 -3.991011 7.566072 -16.811357 0.015242 -1.759893 -22.646992 -8.783721 4.611768 42.975014 -0.600023 0.228006 -0.119236 0.335753 -0.004177 0.258429 10.054263 7.056480 10.484654 10.304205 -0.518566 33.243122 -0.275476 0.240011 0.098153 -0.008033 0.091124 0.066278 0.856621 4.318690 19.646355 -4.427507 6.256151 12.018683 -7.213134 7.389434 7.654943 -5.540719 -3.978971 11.650670 17.325384 -9.919218 -19.608664 -5.986817 13.069184 -4.650084 -31.265684 8.768179 -6.832482 21.656338 -17.152130 -3.848125 0.233543 -0.453307 0.870992 0.894782 2.747542 -0.364839 7.325491 -0.062510 -2.233165 3.256404 -1.812000 0.276014 -0.316195 0.453849 -0.253969 +-0.020696 1.630636 -0.002398 -4.126831 7.794203 -16.931412 -0.838905 -1.945436 -20.907887 -9.649115 4.012560 36.095867 -0.586681 0.242247 -0.101813 0.333547 -0.021901 0.247374 10.426807 7.294118 10.473509 10.715249 -0.609220 34.109272 -0.272744 0.220915 0.097301 -0.015245 0.106236 0.071910 1.288474 4.161274 18.749071 -4.554429 6.068383 11.918659 -7.490805 7.137002 7.757003 -5.724540 -3.703621 11.876848 17.202044 -10.260029 -18.103973 -4.190076 14.253014 -4.313207 -30.333218 9.290280 -6.741004 22.727171 -18.430447 -4.210660 0.236752 -0.424085 0.858514 -0.457903 1.925927 -0.257216 6.762671 -0.182746 -2.122958 3.273176 -2.112386 0.259466 -0.312003 0.424635 -0.254839 +-0.022875 1.629747 0.006702 -4.472632 8.186842 -17.068024 -1.681443 -2.192682 -19.145027 -10.050715 3.262365 29.829958 -0.580924 0.220266 -0.092879 0.369760 0.015570 0.270284 10.700032 7.579958 10.174514 11.769273 -0.956435 35.226055 -0.285394 0.215500 0.102202 0.004025 0.089943 0.066559 1.851078 3.906550 17.835476 -4.600837 5.890313 11.957416 -7.671165 6.931386 8.162291 -5.633642 -3.869373 11.850266 16.729771 -10.200115 -17.948910 -3.339663 14.925987 -4.434889 -29.188829 9.280815 -6.522336 25.171671 -19.160498 -4.643772 0.260612 -0.400930 0.853417 -1.802044 0.956153 -0.305770 6.092908 -0.285560 -1.983551 3.251094 -2.641173 0.214050 -0.314547 0.392826 -0.245236 +-0.024068 1.626127 0.016058 -5.273454 8.759889 -16.899858 -2.325442 -2.321586 -17.611217 -9.977678 2.435954 23.767332 -0.583020 0.220507 -0.083728 0.361795 0.016042 0.254268 11.224492 7.864279 9.390880 13.273502 -1.518406 36.308239 -0.274971 0.206743 0.115033 0.010522 0.109031 0.050706 3.165966 3.297576 16.746153 -4.833251 5.644050 11.693574 -8.450964 6.624115 8.286426 -5.066832 -3.607091 12.068057 16.789845 -9.951369 -16.948109 -2.176359 15.778897 -4.120201 -27.414852 9.957491 -6.149684 26.460249 -20.542669 -5.067749 0.252733 -0.407751 0.841299 -3.061572 0.003088 -0.553859 5.996947 -0.045110 -1.955649 3.121947 -3.069754 0.191597 -0.323283 0.387458 -0.258793 +-0.025700 1.620046 0.027458 -5.823000 9.023178 -16.107115 -3.114632 -2.334603 -16.552248 -9.486646 1.767136 18.535543 -0.586465 0.239557 -0.066767 0.340895 0.002554 0.236150 11.608273 8.240806 8.167039 14.639769 -2.008888 37.219173 -0.244436 0.195399 0.129728 0.019045 0.144947 0.024487 3.615959 3.252626 14.353859 -4.823358 5.471860 11.435597 -8.546617 6.525540 8.967821 -4.747459 -3.621076 12.051307 16.356836 -10.078753 -15.634142 -1.407556 16.463936 -3.780350 -25.572245 11.023976 -5.787002 27.796854 -22.104076 -5.580411 0.226584 -0.429262 0.807359 -3.407697 -1.064206 -1.018846 4.634058 0.453520 -1.711582 3.157428 -3.292393 0.142838 -0.330055 0.384666 -0.281421 +-0.027019 1.613307 0.038532 -6.460461 9.240113 -15.371279 -3.561190 -2.234961 -15.754445 -9.184750 1.340235 14.598996 -0.591596 0.238616 -0.074665 0.342567 0.025995 0.220906 11.966275 8.574569 6.935697 16.050371 -2.548697 38.008537 -0.231573 0.179489 0.127971 0.042171 0.156777 0.015269 4.535338 3.111742 11.601721 -4.877549 5.408737 11.400077 -8.911553 6.609269 10.182840 -4.239476 -3.753650 12.304109 16.287533 -10.061085 -15.114967 -1.045628 16.588171 -3.591037 -23.517746 11.893268 -5.349704 29.385859 -22.672020 -5.911297 0.210626 -0.420950 0.777305 -3.712678 -2.101429 -1.395728 3.350409 0.689741 -1.434433 3.358288 -3.473799 0.085072 -0.338465 0.371201 -0.279711 +-0.029074 1.606755 0.048024 -6.810372 9.275526 -15.355342 -3.931231 -2.122959 -14.697793 -9.139399 1.159144 12.435735 -0.570536 0.196972 -0.066574 0.386659 0.095302 0.240252 12.099261 8.897943 6.390271 17.576565 -3.165321 39.007683 -0.251564 0.187064 0.139145 0.070132 0.141384 0.011566 4.882299 3.023941 9.901226 -4.852162 5.337343 11.577704 -8.958626 6.600912 11.189610 -4.053915 -3.954886 12.654314 16.261168 -9.924858 -15.537534 -0.587312 16.302937 -3.170566 -22.000633 12.982309 -5.143117 30.010637 -22.280674 -5.793110 0.234604 -0.409866 0.764058 -4.055399 -2.499152 -1.299668 2.119795 0.429654 -1.166324 3.541401 -3.541464 0.042051 -0.336532 0.353557 -0.254124 +-0.031392 1.600388 0.055617 -6.669817 9.652380 -15.728880 -4.499605 -2.291588 -14.128936 -9.495353 1.221258 12.546248 -0.552937 0.164668 -0.059256 0.414982 0.141496 0.263696 11.617004 9.110893 6.263068 19.087206 -3.937845 40.179920 -0.253824 0.197457 0.158306 0.086927 0.129370 0.001806 4.488379 3.002986 9.375340 -4.834395 5.191481 11.796747 -8.757939 6.424351 11.727263 -3.739225 -4.088414 12.754100 15.967181 -9.654363 -15.645126 -0.089609 15.987109 -3.053134 -20.490063 13.025313 -4.758587 30.259727 -21.178267 -5.408865 0.243799 -0.416562 0.747185 -4.446105 -2.732316 -1.197526 1.270329 0.162522 -1.006136 3.400819 -3.779029 0.008734 -0.334872 0.347403 -0.236856 +-0.034283 1.594756 0.061444 -6.032451 9.876884 -16.616261 -4.996894 -2.444383 -13.455304 -10.543872 1.508445 13.736222 -0.513213 0.117958 -0.057877 0.432978 0.185026 0.268405 10.887471 9.295085 6.745805 20.079943 -4.566698 41.559490 -0.268517 0.199890 0.155451 0.092760 0.102950 0.009131 3.859790 2.859071 10.205362 -5.215463 5.088456 12.065938 -8.967978 6.137178 11.686544 -3.472038 -4.360729 12.366304 15.827411 -9.488283 -15.909581 -0.003556 15.518715 -3.015717 -18.173122 13.000220 -4.203537 30.487890 -19.424179 -4.788542 0.264949 -0.383947 0.724507 -4.277845 -2.476399 -0.903966 0.835400 -0.360045 -0.924176 2.730377 -3.356227 0.044024 -0.314029 0.326410 -0.200417 +-0.036823 1.590169 0.065811 -5.551052 9.878587 -17.501078 -4.845501 -2.537252 -13.493332 -11.813136 1.986752 16.000912 -0.492978 0.098405 -0.046346 0.439015 0.189605 0.260722 10.277125 9.390698 7.223122 21.047129 -5.237915 42.820995 -0.277432 0.201850 0.158928 0.086599 0.099001 0.008465 2.762301 2.987737 11.206544 -5.156317 4.976137 12.254649 -8.437346 5.901616 11.419457 -3.573648 -4.205540 12.035791 16.597221 -9.643493 -15.806314 0.703397 14.689911 -2.570893 -17.622530 12.990817 -4.139852 30.650360 -18.257814 -4.419649 0.289771 -0.362214 0.728043 -3.701504 -1.919399 -0.251441 -0.229506 -1.340169 -0.773066 2.409193 -2.807476 0.081000 -0.303515 0.312764 -0.193625 +-0.038940 1.585690 0.069668 -4.929891 9.488955 -18.203884 -4.374753 -2.442448 -13.616536 -13.454579 2.611083 17.959927 -0.514775 0.121368 -0.062201 0.439389 0.175490 0.287939 9.826928 9.542854 7.654323 21.269226 -5.587439 44.119705 -0.279158 0.200912 0.144325 0.084202 0.082448 0.025800 1.578688 3.293712 11.785263 -5.032387 4.914522 12.684107 -7.779404 5.887495 11.745414 -3.241165 -5.044104 11.124470 15.849629 -9.586782 -16.922413 0.453727 14.212224 -2.916010 -16.196539 12.211713 -3.703997 29.969469 -17.242598 -4.093431 0.271847 -0.369436 0.740453 -3.718600 -1.895893 0.084661 -0.592408 -1.914284 -0.630470 2.649701 -2.121696 0.100070 -0.310996 0.321019 -0.194241 +-0.039790 1.582426 0.072811 -4.576007 8.706415 -18.530401 -3.584489 -2.097750 -13.497498 -14.935224 3.097521 18.574690 -0.521081 0.121746 -0.063135 0.434012 0.176286 0.287586 9.717605 9.692623 7.891283 21.109074 -5.654881 45.152569 -0.268262 0.193425 0.145458 0.091038 0.083881 0.015469 0.982511 3.662735 12.186826 -4.826372 5.090731 12.834388 -7.313937 6.037491 11.749137 -3.035353 -4.881558 10.555465 15.230491 -9.235505 -16.684244 0.394961 13.954680 -3.416221 -15.286575 10.527269 -3.318347 29.636141 -16.606667 -3.922671 0.262765 -0.371829 0.727575 -3.584359 -2.293776 0.217537 -0.775149 -2.474589 -0.462050 2.933989 -1.096669 0.106055 -0.314221 0.315177 -0.201086 +-0.040465 1.580509 0.074951 -4.728564 8.062548 -18.326052 -2.658056 -1.862699 -13.731881 -15.715814 3.277472 18.571857 -0.538020 0.158503 -0.057617 0.431562 0.152943 0.296664 10.045768 9.655723 7.644972 20.876585 -5.667818 45.662395 -0.261336 0.184374 0.145326 0.089048 0.103409 0.023173 1.339209 3.571880 12.295890 -4.946685 5.165821 12.674780 -7.660355 6.102020 11.527073 -2.805838 -4.561454 9.957518 15.306567 -8.992541 -16.592108 0.786733 13.993357 -3.709794 -14.286946 8.952341 -2.837391 28.665321 -16.804798 -3.933703 0.243113 -0.377100 0.733552 -3.508577 -2.782237 -0.131474 0.263298 -2.266652 -0.607973 2.883276 -0.491513 0.123234 -0.325678 0.314343 -0.217065 +-0.041404 1.580895 0.074845 -4.895236 7.432902 -17.854683 -2.113874 -1.748330 -13.805694 -15.552965 3.098426 17.744396 -0.499506 0.114727 -0.035493 0.438645 0.184729 0.282994 10.561412 9.551908 7.204821 20.163866 -5.389934 46.087952 -0.255190 0.182641 0.156341 0.101020 0.106092 -0.004834 1.377042 3.508867 12.480667 -4.967859 5.230163 12.347021 -7.737837 5.998957 11.026372 -2.667446 -3.880090 9.767068 15.675796 -8.730340 -15.417990 1.133555 13.875749 -3.730793 -14.355453 7.654456 -2.759485 28.763899 -17.518848 -4.125731 0.269161 -0.352353 0.697577 -2.973618 -2.897520 -0.396360 1.103943 -2.022044 -0.677411 3.001562 -0.240137 0.089109 -0.304632 0.283507 -0.209004 +-0.041670 1.582720 0.073127 -5.474507 7.057204 -17.512535 -1.687398 -1.742356 -13.658428 -14.894259 2.706068 16.541752 -0.495791 0.114264 -0.023061 0.427961 0.171091 0.262201 11.342493 9.234778 6.946210 19.550903 -5.158121 45.869450 -0.249277 0.164995 0.170132 0.093401 0.118133 -0.009661 1.798280 3.362192 13.147634 -4.674337 5.177801 11.889111 -7.586560 5.886666 10.112708 -2.821289 -3.283498 9.898936 15.097484 -8.465652 -14.126748 1.029614 13.545817 -3.816471 -15.260507 6.508913 -2.838840 29.547970 -18.949345 -4.683426 0.270714 -0.341940 0.692529 -2.872077 -3.019885 -0.337296 2.468552 -2.573386 -0.929480 2.518557 0.383905 0.109882 -0.310458 0.267723 -0.217600 +-0.042555 1.585912 0.070807 -5.525690 6.643189 -16.781773 -1.739013 -1.828545 -13.588310 -14.104346 2.258789 14.864264 -0.498152 0.119066 -0.023439 0.428673 0.170815 0.263698 11.382758 8.901643 6.531032 18.890930 -4.876945 45.151787 -0.253825 0.156564 0.166454 0.094393 0.117203 -0.001975 1.698232 3.400842 13.139298 -4.583563 5.124149 11.549253 -7.427307 5.820834 9.700743 -2.909871 -3.053829 10.202699 14.552790 -8.203836 -13.751229 1.219036 13.474152 -4.119719 -16.445009 4.803295 -2.917284 29.472849 -19.894625 -5.070312 0.267972 -0.338880 0.694202 -2.926183 -3.471682 -0.689204 4.793883 -2.590908 -1.346429 2.217576 0.814022 0.112270 -0.311758 0.261684 -0.217550 +-0.042751 1.589143 0.067831 -5.611749 6.028143 -15.916254 -1.954579 -1.867604 -13.460104 -13.062427 1.765702 12.707577 -0.515330 0.148724 -0.025044 0.411756 0.147614 0.271001 11.490089 8.564092 6.122901 17.992548 -4.464954 44.180592 -0.253084 0.158921 0.169666 0.083305 0.128684 0.010883 1.636103 3.406329 13.129486 -4.443459 4.975444 11.189629 -7.216844 5.715500 9.268760 -2.622431 -3.128877 10.111777 13.734401 -7.724998 -14.168811 0.922523 13.521897 -4.463075 -17.292879 3.709733 -2.923253 28.915710 -21.382702 -5.532259 0.233529 -0.374101 0.704379 -3.052137 -3.872083 -1.161016 7.203297 -2.304205 -1.821709 1.787751 1.143558 0.125811 -0.326457 0.289703 -0.226884 +-0.043336 1.592032 0.064253 -5.793404 5.034198 -14.978838 -1.817959 -1.641853 -13.311058 -12.262595 1.359153 10.131037 -0.495148 0.144533 -0.022228 0.428027 0.171063 0.303682 11.463897 8.376217 5.533312 17.434933 -4.198422 43.530918 -0.261829 0.150629 0.174898 0.082494 0.114929 0.040429 0.630329 3.872684 12.953299 -3.687336 4.864581 10.882153 -5.875412 5.628141 8.981506 -1.851942 -3.682354 9.725750 12.149154 -7.123487 -14.332967 -0.194883 13.913610 -5.201725 -18.561829 2.385224 -2.992951 28.892714 -23.348284 -6.170388 0.210860 -0.367843 0.682539 -3.146991 -4.473629 -1.666033 8.737342 -1.890279 -2.024049 1.897110 1.376961 0.097880 -0.326871 0.279169 -0.195067 +-0.043358 1.595042 0.059627 -6.056501 4.317076 -14.044091 -1.841374 -1.586961 -13.457497 -11.196698 0.991095 8.074436 -0.490393 0.146872 -0.026956 0.444629 0.180284 0.342418 11.092835 8.019511 4.849185 17.630259 -4.340019 42.492218 -0.278549 0.143104 0.174461 0.076181 0.091871 0.073083 -0.359603 4.231621 12.956341 -2.881751 4.618248 10.394810 -4.477184 5.408149 8.407340 -1.154337 -3.624262 9.796670 10.514549 -6.032311 -14.355914 -0.925410 13.901865 -5.417738 -20.188593 1.606490 -3.137655 28.223068 -25.602871 -6.777121 0.196185 -0.360462 0.686601 -3.157259 -5.153779 -2.180488 11.304285 -1.971972 -2.651613 -0.129108 2.851939 0.085543 -0.331694 0.271134 -0.174107 +-0.042656 1.597669 0.053460 -6.426638 3.536702 -13.586271 -1.945859 -1.582665 -13.331447 -9.689974 0.632015 6.213453 -0.470395 0.102348 -0.048291 0.466405 0.200744 0.366441 10.910153 7.551595 4.636722 17.629892 -4.397682 41.544319 -0.299257 0.150129 0.157674 0.070936 0.033515 0.084942 -0.534407 4.211211 14.273615 -2.380306 4.423529 9.663254 -3.860014 5.113439 7.002732 -1.014222 -2.874205 10.240171 10.420996 -5.094820 -14.366950 -1.235526 13.494546 -5.240668 -21.792099 0.956805 -3.356978 27.958836 -27.097466 -7.202539 0.233332 -0.313191 0.699692 -2.577214 -5.349192 -2.378464 14.041695 -2.504968 -3.431460 -2.565401 4.379806 0.022432 -0.311519 0.248779 -0.145534 +-0.041985 1.599761 0.046945 -7.111927 2.733611 -12.768071 -1.623541 -1.522498 -13.890051 -8.352998 0.378807 4.952783 -0.450083 0.091897 -0.062484 0.493507 0.225836 0.378559 11.236578 7.084146 4.047431 17.564560 -4.421905 40.534851 -0.321440 0.137019 0.140104 0.070200 0.011470 0.125927 -0.194313 4.178257 14.585880 -1.791273 4.375157 9.218682 -3.322288 5.068130 6.408412 -0.799754 -2.438090 10.195643 10.786695 -4.700784 -14.650027 -1.472904 12.910835 -5.800559 -23.600740 -1.389718 -3.381789 27.297716 -26.758974 -7.163976 0.240964 -0.255909 0.697913 -2.048752 -5.800371 -2.739186 16.061876 -2.447714 -3.813282 -2.833793 4.235734 0.012486 -0.304081 0.220733 -0.106104 +-0.040630 1.600742 0.039197 -7.842191 1.821958 -11.850981 -1.344640 -1.537237 -14.852860 -6.840158 0.192858 4.260090 -0.470127 0.104994 -0.068153 0.518332 0.244448 0.396797 11.346648 6.684801 3.279359 18.139788 -4.707869 39.552475 -0.333094 0.129464 0.131481 0.089450 0.011423 0.135001 0.763873 4.111154 14.052859 -1.389540 4.523220 9.240656 -3.171785 5.271646 6.775806 -0.507326 -2.363046 9.887308 11.086481 -4.533690 -15.255362 -1.711168 11.937687 -6.742143 -24.926035 -4.446634 -3.197478 25.960289 -25.971628 -6.959079 0.241144 -0.246440 0.709604 -1.741394 -6.143349 -3.013689 17.872826 -2.106651 -3.922175 -1.163330 3.032800 0.037642 -0.317028 0.209550 -0.109558 +-0.040021 1.602713 0.029556 -8.507977 1.138346 -11.368317 -1.176508 -1.626343 -15.616118 -5.140998 0.044430 4.068170 -0.492683 0.103531 -0.081990 0.531865 0.244946 0.427342 11.428002 6.171286 2.768709 19.046562 -5.170203 38.563126 -0.349212 0.143883 0.119972 0.093479 -0.014539 0.133957 1.787275 3.758174 14.483984 -1.229457 4.507627 9.122309 -3.388549 5.265185 6.605910 -0.015911 -2.415135 10.400638 11.310843 -4.113503 -15.783969 -2.181336 9.796334 -6.965028 -25.545555 -6.310042 -3.187025 24.959631 -25.215872 -6.821713 0.256305 -0.257824 0.746413 -1.265792 -5.382290 -2.575724 21.292364 -2.632297 -4.571605 -1.560523 3.144281 0.037535 -0.320099 0.219349 -0.121027 +-0.040496 1.604033 0.020721 -8.633756 -1.573110 -11.131506 -0.203922 -1.224436 -15.803123 -4.197039 0.004062 3.513190 -0.502556 0.082074 -0.103136 0.571505 0.289076 0.465337 11.485034 6.254771 2.735065 18.980968 -4.991551 38.182899 -0.375473 0.153498 0.109329 0.114425 -0.051667 0.143695 1.708814 4.016927 14.783199 -1.004399 4.721136 9.165123 -3.098986 5.446383 6.684872 0.168611 -1.713058 11.103239 11.074471 -3.057301 -16.518053 -2.915517 8.498285 -7.275072 -26.412558 -7.560674 -3.246636 24.463438 -24.882555 -6.837063 0.275801 -0.246606 0.768323 -0.038173 -4.175982 -3.132375 23.756567 -1.008345 -4.766864 -2.484317 2.362930 0.049244 -0.322589 0.214022 -0.107409 +-0.039827 1.603822 0.011106 -8.537161 -5.603940 -10.895358 1.388055 -0.640032 -16.175356 -4.060088 0.036970 3.348687 -0.530282 0.083468 -0.127672 0.593581 0.317036 0.492598 11.600969 6.851070 2.496194 18.122404 -4.475215 38.860382 -0.389137 0.151589 0.102064 0.134564 -0.073257 0.155409 1.672062 4.506456 14.977209 -0.909994 5.174288 9.396465 -2.968445 5.891224 7.051129 0.448807 -0.948838 11.272614 10.081798 -1.760068 -17.441475 -4.506136 7.173597 -7.921355 -26.435722 -8.692410 -3.251347 24.333052 -24.820116 -6.956473 0.265957 -0.252267 0.784387 1.465188 -3.019612 -3.733973 25.382353 0.768599 -4.717405 -2.609383 3.173218 -0.046670 -0.340359 0.218296 -0.104868 +-0.038469 1.603450 0.000656 -8.669955 -8.889622 -11.010361 2.918513 -0.311682 -16.804071 -3.715788 0.060996 4.770159 -0.563680 0.084882 -0.158341 0.642437 0.361210 0.553384 11.842121 7.214280 2.396221 17.341831 -4.117503 39.610577 -0.419174 0.146923 0.080880 0.165016 -0.119036 0.180379 1.583976 4.852439 15.092634 -0.438878 5.399742 10.036619 -2.262841 6.173857 8.026983 0.872611 -0.598690 11.179655 8.533089 -0.450847 -18.925381 -6.853514 5.159647 -8.631979 -26.402456 -9.910235 -3.360875 24.437632 -25.717844 -7.433562 0.267544 -0.238903 0.809897 2.978642 -1.577064 -4.083611 25.788862 2.369560 -4.421221 -1.979339 4.469774 -0.160062 -0.357317 0.204773 -0.093568 +-0.037852 1.602558 -0.009399 -8.528865 -11.782388 -11.195033 4.459744 -0.110428 -17.892426 -3.735615 0.167769 7.501095 -0.599703 0.106453 -0.172358 0.657286 0.377027 0.600818 12.099599 7.397387 2.463532 15.885890 -3.528864 40.273319 -0.426225 0.145770 0.070183 0.189493 -0.133071 0.184561 0.915948 5.305832 14.975981 -0.037992 5.541575 10.677609 -1.368023 6.343130 9.082764 1.788709 -0.880840 11.040250 6.904176 0.548386 -19.768591 -9.620966 2.947673 -9.533632 -25.201527 -11.288460 -3.407972 24.132675 -27.396652 -7.948968 0.239935 -0.269987 0.818005 5.349040 0.007910 -4.450488 25.759266 3.802063 -4.170220 -1.572287 6.403039 -0.322354 -0.375529 0.212634 -0.106757 +-0.035572 1.601129 -0.018701 -8.460671 -14.527918 -11.673638 6.337739 0.072293 -19.120441 -4.539550 0.399319 11.629545 -0.622813 0.106341 -0.195881 0.685742 0.414705 0.629621 12.305518 7.433043 2.855242 14.219005 -2.873035 40.789646 -0.441972 0.146645 0.053224 0.217805 -0.153457 0.192429 0.884196 5.316093 15.401406 0.188066 5.599452 11.225707 -1.031792 6.389999 9.863536 1.962904 -0.619630 11.305351 6.481837 1.201231 -20.698587 -12.037810 0.462215 -10.103388 -24.030695 -12.430778 -3.561134 23.659901 -29.257032 -8.453406 0.235837 -0.268050 0.825987 8.291071 1.970936 -4.981664 25.244617 5.533561 -3.994895 -1.858768 8.133864 -0.502231 -0.386510 0.211124 -0.100760 +-0.031967 1.598767 -0.028115 -8.202033 -17.271656 -12.029581 8.168844 0.142976 -20.848936 -5.765432 0.832474 16.946722 -0.678158 0.145943 -0.222460 0.700551 0.408424 0.675796 12.332624 7.529608 2.954453 12.540421 -2.259396 41.437984 -0.448535 0.144590 0.036579 0.232147 -0.167545 0.204412 0.344542 5.466733 15.686317 0.592577 5.489139 11.656077 -0.191052 6.344524 10.536777 1.996294 -0.162407 11.627958 5.226803 2.072626 -21.464582 -13.769635 -2.252175 -10.151012 -23.997086 -13.259304 -3.765440 22.946787 -30.919790 -8.927555 0.211025 -0.295198 0.858036 10.503650 4.041214 -5.526779 24.693262 7.500402 -3.864114 -1.800703 9.561327 -0.632198 -0.411608 0.225655 -0.119966 +-0.027803 1.597802 -0.038296 -7.493930 -20.085546 -12.756677 9.833111 0.131750 -22.539646 -7.500815 1.534848 22.963163 -0.689699 0.155924 -0.238336 0.724115 0.436334 0.693573 11.932456 7.729371 3.050954 10.584814 -1.494938 42.297615 -0.465228 0.136853 0.027093 0.248603 -0.173967 0.228126 -0.365394 5.540658 16.634020 0.781927 5.382965 11.937026 0.315444 6.206819 10.709776 1.702091 0.962741 12.321740 4.547072 3.029237 -21.655489 -15.226779 -4.632668 -10.294576 -23.944445 -14.416365 -3.948618 22.693195 -31.371840 -9.148130 0.198781 -0.288318 0.862737 12.859879 6.237404 -6.419742 24.072592 10.100929 -3.650813 -1.070169 10.362658 -0.666614 -0.422411 0.222532 -0.106768 +-0.024036 1.598670 -0.048295 -6.744398 -22.626949 -13.503515 11.471275 0.112351 -24.025383 -9.662679 2.541649 28.939156 -0.706735 0.150195 -0.262449 0.763716 0.479853 0.726663 11.914480 7.862225 3.132725 8.254448 -0.520064 42.922150 -0.489629 0.133154 0.010901 0.274273 -0.200378 0.245752 -1.220822 5.615343 17.529762 0.933697 5.239964 12.212817 0.846218 6.006251 10.912934 1.484120 2.219348 13.229385 3.987791 4.196107 -22.047091 -15.953197 -6.503157 -10.496484 -24.116835 -15.854611 -4.032582 22.157085 -32.495907 -9.432555 0.204493 -0.271942 0.877351 14.681398 8.250980 -7.425218 24.198839 12.861330 -3.409259 0.455122 11.024898 -0.605893 -0.431157 0.210858 -0.092617 +-0.019578 1.599564 -0.057778 -5.753385 -24.796505 -14.087120 12.781827 -0.207441 -25.675493 -12.218158 3.856990 34.823349 -0.728402 0.145072 -0.285555 0.798853 0.520402 0.758505 11.549994 7.961546 2.747579 5.990807 0.354238 43.553497 -0.509133 0.132643 0.000493 0.298837 -0.223943 0.257642 -1.953511 5.594425 18.223082 0.937189 5.056224 12.397540 1.186916 5.778185 11.090706 1.037798 3.244866 14.073717 3.185899 5.111345 -22.634178 -16.179165 -8.301425 -10.830832 -24.511190 -17.792847 -3.967719 20.699020 -33.894817 -9.485025 0.208119 -0.270920 0.892861 16.211451 10.084715 -8.288543 25.085737 15.262400 -3.263641 1.651075 12.056154 -0.578516 -0.441781 0.208540 -0.083026 +-0.014428 1.601342 -0.066683 -4.659774 -26.503271 -14.570338 13.707999 -0.876459 -27.343254 -14.741407 5.410605 40.615929 -0.769704 0.150191 -0.314337 0.814781 0.543442 0.772671 10.616905 8.038514 1.844983 4.421527 0.827156 44.246857 -0.514995 0.130340 -0.002675 0.324365 -0.238970 0.254222 -2.824683 5.566606 18.798265 0.901086 4.761019 12.483549 1.575875 5.467233 11.194688 0.661860 4.355558 15.046920 2.263628 6.139658 -22.975840 -16.242790 -10.588554 -11.123248 -24.970383 -19.963137 -3.880551 19.440142 -35.328617 -9.593328 0.199534 -0.289451 0.911532 17.808470 12.115895 -9.035743 26.005264 17.621380 -3.116271 2.568244 12.555613 -0.539392 -0.466386 0.218758 -0.094191 +-0.008829 1.603109 -0.074684 -3.951068 -28.314140 -14.658726 14.656464 -1.484501 -28.988861 -16.692184 6.948024 46.013744 -0.781411 0.157537 -0.326287 0.834949 0.561806 0.796363 10.009518 8.156072 0.609379 2.790552 1.355837 44.942593 -0.529109 0.132999 -0.007122 0.334129 -0.246105 0.268468 -3.047845 5.335081 19.334686 0.839016 4.587658 12.353227 1.608082 5.275980 11.017730 0.437865 5.567584 16.024952 1.901066 7.147861 -23.041361 -16.170395 -13.187204 -11.091045 -25.422512 -21.855394 -3.810431 18.075987 -36.958931 -9.666641 0.192161 -0.295266 0.924107 19.069092 14.252347 -9.332437 27.213049 19.503361 -2.955547 3.485200 13.497530 -0.491509 -0.474513 0.224502 -0.088273 +-0.003852 1.607093 -0.080989 -2.896662 -30.115959 -14.805517 15.251166 -2.069932 -29.847027 -18.544859 8.535769 50.239414 -0.805040 0.159552 -0.347084 0.865764 0.586449 0.845685 8.913358 8.079727 -0.280793 1.316384 1.804896 44.753677 -0.552468 0.146162 -0.028084 0.351881 -0.276800 0.277291 -3.832794 5.394170 19.295912 0.814932 4.357676 12.312677 1.997712 5.024978 11.154979 0.011191 6.492095 17.167461 1.177251 8.008206 -23.738403 -15.853295 -15.522545 -11.102896 -26.583313 -23.804476 -3.760355 17.679979 -38.716789 -10.173847 0.199799 -0.308034 0.952064 20.382586 16.483505 -9.621178 28.525106 21.361944 -2.873426 4.053050 14.467405 -0.493729 -0.474997 0.232469 -0.086949 +0.001097 1.612081 -0.085637 -2.009492 -32.103107 -14.571639 15.690452 -2.468781 -30.211660 -20.086716 9.942435 53.228905 -0.824168 0.149686 -0.371978 0.900415 0.627798 0.870592 7.707985 7.885155 -1.140233 0.317813 2.014092 43.834743 -0.568441 0.149165 -0.037252 0.377586 -0.301117 0.284288 -4.087099 5.370061 18.836349 0.673531 4.316521 12.288920 2.009706 4.951563 11.451797 -0.449880 7.678872 17.719826 0.946899 8.769865 -24.558426 -15.501579 -17.728943 -11.281701 -27.603498 -26.205488 -3.452594 16.468843 -40.785332 -10.343193 0.208900 -0.300627 0.965986 22.039856 18.005072 -9.962749 29.935440 23.090492 -2.860291 4.654496 16.845171 -0.536531 -0.484247 0.229993 -0.077167 +0.006153 1.618039 -0.089065 -1.159633 -34.417976 -14.113240 16.254591 -2.486581 -30.078491 -21.829233 11.530076 55.452095 -0.817439 0.111422 -0.398393 0.929744 0.686760 0.888795 6.591913 7.667726 -1.917775 -0.506562 2.177115 42.379234 -0.581796 0.150947 -0.049624 0.403784 -0.337581 0.287185 -4.317830 5.527941 17.547800 0.622589 4.396069 12.401053 2.226631 4.937293 12.249357 -0.603485 8.691172 18.291443 0.333090 9.715027 -25.155951 -14.696858 -19.727465 -11.243314 -29.037321 -28.495146 -3.001236 15.277623 -42.961945 -10.489894 0.218893 -0.277447 0.951106 23.210218 19.423939 -10.020134 31.335407 24.357399 -2.894075 5.340564 20.328924 -0.598119 -0.478576 0.217230 -0.047901 +0.011989 1.624733 -0.092506 -0.508101 -36.275551 -13.372909 16.369020 -2.927111 -29.939592 -22.814600 12.535553 57.173092 -0.836719 0.107558 -0.423427 0.972779 0.732218 0.948996 5.427729 7.206614 -2.720895 -1.176937 2.110198 40.667812 -0.605508 0.140913 -0.063456 0.430563 -0.378063 0.311365 -4.656405 5.472090 15.542945 0.534732 4.162086 12.803163 2.584735 4.643502 13.712276 -0.035264 9.062766 18.888077 -1.375103 10.961511 -26.018171 -12.964817 -21.662720 -11.440739 -30.999987 -31.429777 -2.242731 14.988541 -45.140751 -11.083923 0.209694 -0.266970 0.957691 22.610880 21.099209 -10.295825 33.775581 26.205519 -2.374150 6.621922 22.771980 -0.497026 -0.492275 0.199208 -0.030320 +0.018954 1.632839 -0.095398 -0.188872 -37.987804 -12.384252 16.186266 -3.313287 -29.581469 -23.117594 13.074473 58.509781 -0.859864 0.137657 -0.422318 1.000346 0.754921 0.980029 4.516550 6.785149 -3.590943 -1.777411 2.037611 38.593773 -0.622438 0.119869 -0.074240 0.456210 -0.368956 0.331829 -4.081478 5.046100 13.537821 0.307615 3.955226 13.266047 2.319573 4.426194 15.248762 0.099114 9.324507 18.971975 -2.113749 11.425934 -26.141409 -11.261165 -23.439707 -11.521269 -32.529953 -34.112473 -1.371864 15.120495 -48.673763 -12.116186 0.189029 -0.266114 0.959605 21.793381 22.915958 -10.753973 35.712666 28.473804 -1.489384 8.507584 24.322695 -0.140397 -0.511834 0.180841 -0.034278 +0.025306 1.641383 -0.097301 -0.542251 -39.944088 -10.915195 16.314032 -3.403374 -28.652822 -22.771137 13.174883 59.425407 -0.911298 0.178894 -0.421773 1.002673 0.749986 0.990762 4.396669 6.370944 -4.169369 -2.806166 2.146480 35.777962 -0.615354 0.099170 -0.070744 0.482067 -0.346302 0.320824 -2.882785 4.556510 11.570958 0.197635 3.843090 13.670925 1.922955 4.362372 16.704454 -0.018685 10.005386 18.846231 -3.027206 11.904634 -26.099365 -9.734567 -25.398897 -11.464329 -34.038246 -36.989613 -0.178231 15.993881 -51.362659 -13.309598 0.160318 -0.297221 0.967722 21.165436 24.301682 -11.337437 37.767395 30.888477 -0.584838 9.875473 26.708069 0.148753 -0.547113 0.178486 -0.073544 +0.031304 1.650131 -0.098817 -0.856332 -41.929783 -9.695102 15.919070 -3.492672 -27.085224 -21.717609 12.839348 60.061893 -0.937801 0.192432 -0.437172 1.015883 0.768596 1.021454 4.173833 5.876807 -4.288719 -3.558881 2.115716 32.378529 -0.618884 0.076039 -0.078767 0.503126 -0.359664 0.332117 -2.260154 4.276648 9.761883 0.186860 3.655869 14.210108 1.881805 4.161911 18.277431 0.333169 10.605669 18.321684 -4.968009 12.809434 -26.825466 -8.415435 -26.805695 -11.385502 -35.180901 -39.826572 1.051894 17.880074 -54.470871 -15.113780 0.132578 -0.296201 0.958876 19.697815 25.482771 -12.363465 39.688690 33.755463 0.871723 12.100214 28.769585 0.842052 -0.566970 0.162527 -0.074986 +0.036861 1.658108 -0.100139 -0.708711 -43.809464 -8.467267 14.905660 -3.534812 -25.559381 -20.248421 12.217989 60.160931 -0.946055 0.210920 -0.418664 1.024623 0.787402 1.030497 3.471545 5.498128 -4.822309 -3.885707 1.971624 29.379862 -0.611777 0.046737 -0.062921 0.526348 -0.332026 0.331516 -1.974897 4.220587 7.711865 0.019630 3.570854 14.578968 1.722256 3.962033 19.697908 0.817285 11.011915 17.349674 -5.980451 13.452775 -26.642031 -6.325960 -27.790190 -11.353952 -36.349861 -42.721581 2.795760 19.648014 -57.580349 -16.854179 0.100534 -0.300538 0.929589 18.356791 26.276810 -13.279320 42.114651 36.407654 2.660153 14.139043 30.977058 1.550706 -0.589365 0.137617 -0.085893 +0.042599 1.664144 -0.102071 -0.526642 -45.121262 -7.063622 13.826838 -3.506287 -24.599703 -19.174902 11.631252 59.457645 -0.946995 0.258391 -0.387693 0.999439 0.771575 1.008299 2.826969 5.272092 -5.705747 -3.972290 1.806051 27.176693 -0.582507 -0.008145 -0.044892 0.536935 -0.267804 0.336139 -2.219940 4.336460 5.366789 0.003672 3.388917 14.782374 2.017438 3.591717 21.089649 1.700519 10.786987 16.190712 -6.775830 13.974439 -25.134264 -3.153059 -28.147654 -11.463265 -38.719383 -46.343384 5.620354 23.407269 -59.769814 -19.725792 0.033027 -0.296529 0.870817 16.166775 26.730240 -14.252510 44.815201 38.909500 4.892429 15.825143 33.364933 2.250826 -0.615879 0.101931 -0.105385 +0.048080 1.669042 -0.104226 -0.733068 -46.235039 -5.375851 12.913041 -3.198283 -23.421019 -17.914255 10.767119 57.741364 -0.954308 0.307424 -0.364783 0.986264 0.777217 0.987194 2.533220 5.195895 -6.705918 -4.037186 1.696595 25.221849 -0.553377 -0.077391 -0.025005 0.561223 -0.200391 0.349465 -2.017075 4.387517 3.086557 -0.028125 3.278562 14.960279 2.086468 3.206985 22.626192 2.779102 10.826136 14.578620 -7.635259 14.627603 -23.868572 0.433951 -27.764511 -11.965924 -40.785454 -49.879936 8.719790 27.362999 -60.750969 -22.435328 -0.046996 -0.280404 0.800177 13.817894 26.494278 -15.624992 48.139809 41.790955 7.802432 16.585855 35.660488 2.705543 -0.655214 0.055326 -0.116324 +0.053377 1.672585 -0.106142 -0.671565 -46.814785 -3.893197 11.459826 -2.942939 -22.181154 -16.140398 9.583920 55.547531 -0.950636 0.365005 -0.340331 0.966309 0.764097 0.954548 1.957998 5.182302 -7.797228 -3.645499 1.523312 23.671066 -0.517947 -0.164296 -0.022018 0.578267 -0.131754 0.372793 -1.919564 4.425741 1.148464 -0.076473 3.175823 14.957006 2.065717 2.795013 23.794067 3.826082 10.731641 12.605187 -7.889929 15.008503 -21.867220 3.222129 -27.083439 -12.216269 -42.217484 -53.365868 12.120479 31.694693 -61.845379 -25.287073 -0.122936 -0.224026 0.718904 12.114221 25.818710 -16.546345 51.171307 44.459446 10.872104 16.401535 38.809841 2.942775 -0.682854 -0.019257 -0.122532 +0.059708 1.674683 -0.107227 -0.859234 -46.958382 -2.335909 9.919062 -2.736645 -20.640936 -14.101479 8.071872 52.302254 -0.958169 0.440343 -0.315949 0.939822 0.745111 0.919628 1.410876 5.200613 -8.952253 -2.924253 1.288273 22.457314 -0.481776 -0.251803 -0.021149 0.597846 -0.051501 0.399063 -1.350319 4.238487 -0.561026 -0.121929 2.950678 14.955166 1.860435 2.281338 24.973686 4.827607 10.758275 10.633663 -8.282496 15.194546 -20.152388 6.449837 -25.609381 -12.709257 -43.667767 -56.592579 15.710822 35.943020 -62.011654 -27.848598 -0.213995 -0.185012 0.638861 9.052210 24.649481 -17.605297 55.137161 47.822521 15.320253 15.135632 43.891220 2.928677 -0.717636 -0.082079 -0.135897 +0.065416 1.676155 -0.108555 -0.878984 -46.990540 -1.003827 8.527240 -2.343069 -18.514132 -12.292443 6.673387 47.958683 -0.971574 0.502153 -0.290632 0.947485 0.767150 0.897013 1.071578 5.108507 -9.644040 -2.864466 1.226002 20.680563 -0.453429 -0.340292 -0.010996 0.641907 0.025014 0.420717 -0.767321 4.114294 -2.158368 -0.179680 2.845925 15.011827 1.526419 1.896911 26.267313 5.323076 10.922235 8.268052 -8.490258 14.956399 -18.852190 9.191633 -24.203531 -13.362367 -45.204578 -60.212364 19.946867 39.044483 -61.700741 -29.297483 -0.289116 -0.141418 0.558560 7.379398 23.140976 -18.209124 58.328152 51.342308 20.247238 12.153774 49.311752 2.164521 -0.762205 -0.156868 -0.142680 +0.070576 1.675576 -0.109205 -1.230472 -46.656609 0.442605 7.331985 -1.740466 -16.060001 -10.061866 5.214743 42.836052 -0.997944 0.571828 -0.276640 0.947832 0.780475 0.880163 1.053766 5.037213 -10.068597 -2.993827 1.212883 18.801537 -0.425038 -0.432788 -0.008094 0.684772 0.094772 0.446590 -0.284973 3.882831 -3.749554 -0.072697 2.528199 14.991328 1.398276 1.312439 27.576986 6.027594 11.206347 5.910971 -9.104285 15.137292 -17.829308 11.725971 -22.904642 -13.194918 -47.234917 -64.533775 25.224836 48.677532 -60.326427 -34.716457 -0.376537 -0.100843 0.483832 4.899434 21.511467 -18.576088 61.936188 55.069584 26.199390 4.828767 54.079399 -1.240528 -0.812577 -0.227911 -0.154991 +0.075876 1.673657 -0.109018 -2.077862 -46.110245 2.012757 6.535984 -1.331937 -13.081786 -8.285513 3.906640 36.841415 -1.018823 0.641023 -0.253573 0.927581 0.766131 0.849975 1.363298 4.890635 -10.263627 -2.874372 1.114060 16.737457 -0.388357 -0.516681 -0.005158 0.712771 0.169920 0.458273 0.481760 3.436158 -5.048006 0.158610 2.045128 14.902683 1.410088 0.645872 28.431152 6.507666 11.548370 4.081892 -9.396035 15.291439 -16.265709 13.629256 -22.269430 -12.785307 -47.420818 -67.600021 28.423721 55.280792 -57.893425 -37.501396 -0.455382 -0.070563 0.415153 2.309518 20.545267 -18.556328 63.445854 58.406113 31.174095 -3.587263 57.647339 -5.777683 -0.851452 -0.290484 -0.180625 +0.081399 1.670869 -0.107950 -3.024992 -45.163448 3.657308 5.893311 -1.174371 -10.053085 -6.714139 2.707225 30.537392 -1.019406 0.691615 -0.225973 0.901554 0.746145 0.812211 1.922684 4.651367 -10.529010 -3.311572 1.057028 14.482162 -0.352628 -0.579892 0.002972 0.725711 0.238784 0.462736 1.321715 2.750009 -6.127728 0.409789 1.401359 14.669721 1.591582 -0.009055 28.826303 6.777174 12.019965 2.717205 -9.378774 15.401419 -14.719897 14.439263 -21.786655 -12.179305 -48.106052 -69.398895 30.808195 59.139744 -55.577740 -38.558247 -0.514520 -0.042489 0.351448 -0.302565 19.854856 -17.972563 63.413548 61.707382 35.246841 -15.484043 60.341480 -12.905975 -0.872714 -0.338976 -0.199186 +0.087997 1.667311 -0.107076 -4.209492 -43.682922 5.327074 5.640352 -1.121407 -7.192679 -4.969370 1.564939 24.122175 -1.042845 0.742357 -0.223079 0.920845 0.791623 0.796968 2.511583 4.493289 -10.739907 -3.291160 0.951021 12.801895 -0.332223 -0.665120 0.001257 0.783237 0.295874 0.487380 2.675274 1.955778 -7.170510 0.667585 0.729253 14.539393 1.773978 -0.718704 29.603876 6.918083 12.356170 0.999013 -9.626181 15.236059 -13.834995 15.685409 -19.757973 -12.304187 -52.083424 -71.228249 35.669212 61.458885 -53.491234 -38.906113 -0.587467 0.003552 0.274759 -2.650172 18.035553 -18.101049 64.836891 65.297920 40.881710 -27.158100 60.834400 -19.952339 -0.919769 -0.409900 -0.196231 +0.094787 1.664079 -0.106596 -4.985158 -41.739777 6.478364 5.355981 -1.161506 -4.619622 -3.154108 0.644335 18.145716 -1.090246 0.817315 -0.219817 0.915304 0.789075 0.788350 2.564704 4.277537 -10.861807 -2.881729 0.762308 11.261994 -0.306446 -0.734677 -0.003111 0.822015 0.355988 0.500772 3.502032 1.115947 -7.960092 0.944044 -0.097512 14.434904 2.296673 -1.536874 30.153122 7.272769 12.537025 -0.196136 -10.017186 15.306556 -13.035751 15.669153 -17.467937 -12.309466 -56.735508 -72.494247 40.849648 63.261333 -51.987835 -39.211372 -0.667121 0.012065 0.229978 -4.700796 16.199377 -18.488214 66.628220 68.156883 46.066250 -34.702087 59.956367 -24.123089 -0.970360 -0.451779 -0.225195 +0.101391 1.662085 -0.106556 -5.300417 -40.164059 6.764904 4.916523 -1.123915 -2.158214 -1.728130 0.088607 13.530686 -1.099236 0.839905 -0.209688 0.915599 0.801475 0.780011 2.097042 4.026699 -10.743176 -2.141443 0.577856 10.268116 -0.295503 -0.763969 0.000655 0.844227 0.386985 0.501329 3.746252 0.343584 -8.364570 1.232044 -0.869282 14.649433 2.940700 -2.295182 30.753368 7.235092 12.683440 -0.707292 -10.284906 15.279030 -12.616693 15.196456 -16.014782 -11.866718 -56.073547 -72.118721 40.071522 67.018219 -51.379295 -41.398281 -0.697536 0.014138 0.198975 -6.720199 15.631665 -18.756304 65.503212 70.584396 47.880749 -40.419041 58.486000 -26.962854 -0.987462 -0.472984 -0.233663 +0.106544 1.661798 -0.106456 -4.944256 -39.087788 6.348263 4.325727 -0.970683 0.016181 -1.205743 -0.157807 9.864465 -1.096951 0.822241 -0.219537 0.954418 0.851100 0.799497 1.295098 3.731236 -10.465878 -1.462644 0.427104 9.707247 -0.313712 -0.764381 -0.004805 0.867795 0.368795 0.511673 3.171412 -0.430666 -8.544799 1.389963 -1.645985 15.086342 3.622384 -2.982769 31.504795 6.846983 12.960088 -0.861428 -10.437006 15.113918 -13.143548 13.846340 -14.872466 -11.076325 -54.482483 -70.344421 37.039261 72.295982 -51.172344 -45.048656 -0.682150 0.032925 0.196125 -8.196864 15.559580 -19.170992 64.083588 72.440781 48.616299 -43.497639 57.674503 -28.336992 -0.988700 -0.487447 -0.210443 +0.111254 1.662997 -0.106018 -4.740160 -38.537167 6.115050 4.048481 -0.737400 1.379201 -1.179225 -0.227580 7.158032 -1.084738 0.788376 -0.228655 1.000917 0.920972 0.829529 0.713187 3.411147 -10.135060 -0.925823 0.299939 8.839221 -0.336795 -0.755659 -0.007592 0.898849 0.341237 0.516950 2.366146 -0.958242 -8.728352 1.630340 -2.214990 15.438787 4.476635 -3.578359 32.226089 6.641571 12.948731 -0.745057 -10.782589 14.985612 -13.848970 13.948818 -13.862144 -10.626502 -56.628014 -69.249527 36.820278 75.675552 -49.002544 -46.430412 -0.661248 0.045069 0.186051 -9.989197 15.184614 -19.792603 63.833912 73.167816 49.030106 -44.953426 57.150688 -29.091829 -0.983364 -0.499070 -0.180107 +0.117050 1.664436 -0.105003 -4.902152 -38.577633 6.606191 3.967666 -0.571117 1.688066 -1.402363 -0.226259 5.278137 -1.077761 0.775152 -0.227254 1.014740 0.938797 0.830495 0.492277 3.368220 -10.587141 -0.772997 0.246548 8.689735 -0.344673 -0.747596 -0.001659 0.902613 0.336509 0.516506 2.692729 -1.349458 -8.828351 1.617638 -2.523815 15.354789 4.594627 -3.812340 32.288555 6.288514 13.026314 -0.367314 -10.775361 14.813252 -14.011901 13.776206 -13.612578 -9.788488 -60.582260 -68.036064 37.971722 78.955338 -46.889603 -47.705170 -0.646007 0.045985 0.189765 -11.118945 14.942119 -19.831707 66.460342 73.011261 51.017929 -46.437981 57.026867 -30.156076 -0.980619 -0.496784 -0.170941 +0.122907 1.666118 -0.104573 -4.451474 -38.422558 6.790403 3.186703 -0.593420 1.158560 -1.276390 -0.268725 4.707998 -1.069638 0.768653 -0.232556 1.016225 0.945699 0.824963 0.018032 3.191138 -10.856431 -1.310403 0.235380 8.007919 -0.350006 -0.756330 -0.000957 0.898630 0.330614 0.531174 2.337476 -1.658933 -8.863449 1.543133 -2.792575 15.227049 4.852370 -4.019577 32.291412 6.229304 13.150345 -0.183849 -11.170837 15.021295 -14.089559 13.014682 -13.408588 -8.975149 -65.255104 -67.021538 40.152306 82.305130 -45.638062 -49.411636 -0.647906 0.061677 0.185085 -11.717545 14.692482 -19.848322 69.128975 72.343956 52.539219 -47.315952 57.403542 -31.085566 -0.980848 -0.502920 -0.156300 +0.128755 1.667961 -0.103188 -4.070812 -38.260422 7.089659 2.559883 -0.654498 0.366627 -1.238704 -0.282167 4.543143 -1.077106 0.788649 -0.222730 0.994107 0.917558 0.828116 -0.513203 2.922876 -10.851745 -1.647080 0.162917 6.766772 -0.346808 -0.757777 0.008350 0.884187 0.340838 0.534871 2.385808 -1.728528 -8.986812 1.525151 -2.863063 14.998963 5.042413 -4.071307 32.190971 6.303298 12.619086 0.119050 -12.283116 15.076365 -14.216791 12.455155 -13.078830 -8.884089 -72.097710 -67.240944 45.277969 81.637329 -44.454758 -48.337662 -0.669855 0.028617 0.190516 -11.799401 14.050757 -19.717897 72.974464 71.297256 54.834290 -47.838268 58.205597 -31.992229 -0.988223 -0.485575 -0.170921 +0.133951 1.667378 -0.100825 -4.089847 -38.572506 7.906460 2.023226 -0.771835 -0.614322 -0.956871 -0.310606 4.438101 -1.090999 0.837962 -0.221204 0.939800 0.833757 0.820332 -0.772714 2.743091 -11.101755 -2.010183 0.080789 5.364624 -0.320281 -0.772708 -0.000133 0.844304 0.358260 0.544182 3.062252 -1.634425 -9.226872 1.376643 -2.750168 14.442250 4.875720 -3.944598 31.619038 6.492706 12.150744 0.513427 -13.014243 15.226171 -13.560247 12.360047 -12.960727 -9.066564 -79.192009 -67.515518 50.885387 78.395531 -42.794807 -45.265221 -0.717387 0.013727 0.188676 -11.302478 13.244636 -19.318937 77.865608 69.759842 57.727581 -47.193928 59.089581 -32.161739 -0.993525 -0.474057 -0.192754 +0.138287 1.666525 -0.098410 -4.151379 -39.715862 8.555477 1.746907 -0.754878 -1.088156 -1.389479 -0.252810 4.218377 -1.094460 0.847454 -0.218103 0.918178 0.790864 0.826976 -1.008653 2.547835 -11.201224 -2.324178 0.017737 3.860257 -0.313390 -0.762404 -0.003633 0.820353 0.350867 0.538424 3.126805 -1.284690 -9.438453 1.382890 -2.418868 14.068754 5.008206 -3.604424 31.115501 6.412742 11.882789 1.204330 -13.347988 15.287351 -13.348889 12.705297 -13.583503 -9.407660 -85.446564 -67.152603 54.847454 74.411972 -41.302387 -42.276527 -0.715568 -0.002619 0.206030 -10.225543 13.082952 -19.100153 79.090797 68.281090 57.511650 -43.573631 60.552917 -30.385550 -0.984893 -0.460988 -0.207544 +0.142154 1.664005 -0.096399 -4.677720 -41.686428 9.656706 1.885013 -0.656468 -1.603452 -2.277337 -0.131871 4.024805 -1.096539 0.847049 -0.216312 0.899181 0.765406 0.823466 -0.900262 2.684221 -12.250626 -2.741712 0.018088 3.545446 -0.316231 -0.743360 -0.003258 0.803856 0.347300 0.530707 3.160746 -0.712731 -9.501808 1.436634 -1.890032 13.627561 5.169096 -3.120769 30.388159 6.273380 12.225251 1.860964 -13.435210 15.693666 -13.532401 13.751966 -14.217770 -9.579228 -91.074524 -66.179016 58.107872 71.605705 -41.023403 -41.015305 -0.707246 -0.029610 0.230715 -8.760969 13.039057 -19.083811 80.860359 66.582199 57.432156 -37.243942 61.676510 -26.572687 -0.976292 -0.434797 -0.222670 +0.146416 1.661711 -0.094626 -4.921983 -42.801075 10.401458 1.961649 -0.653288 -2.308728 -2.962060 -0.032566 4.267697 -1.101563 0.853457 -0.224961 0.870326 0.719591 0.826937 -0.979882 2.826349 -13.204652 -3.001142 0.008811 3.600504 -0.311085 -0.731952 -0.012616 0.774296 0.332458 0.530921 3.247879 -0.434707 -9.442404 1.396472 -1.644224 13.281281 5.101701 -2.848711 29.631275 6.132382 12.535857 2.332519 -13.839775 16.173334 -13.591652 14.036519 -14.964469 -10.235558 -94.001587 -65.193275 59.397999 65.991959 -42.356003 -38.854191 -0.711980 -0.044189 0.250843 -6.929202 13.165133 -19.168177 81.738197 65.022469 56.448383 -29.359505 61.857716 -21.390314 -0.967768 -0.414291 -0.232128 +0.149290 1.659856 -0.091518 -5.146772 -44.025570 10.659870 1.861766 -0.618712 -2.457432 -3.627368 0.076044 4.691832 -1.113603 0.862037 -0.234416 0.836180 0.655577 0.837443 -1.104248 2.909253 -13.575015 -3.150526 -0.015004 3.813988 -0.314156 -0.699742 -0.017814 0.729508 0.310522 0.530876 3.055251 -0.057957 -9.364016 1.450817 -1.412310 13.194138 5.110569 -2.577329 29.038452 6.297140 12.702289 3.478209 -14.333034 16.750994 -14.108746 14.413742 -15.568020 -11.278418 -95.429695 -63.821934 59.185909 57.418194 -45.314835 -35.808811 -0.706590 -0.085103 0.302984 -5.280315 13.301097 -19.151182 81.850861 62.609364 53.425987 -20.594717 61.990658 -15.891312 -0.957578 -0.366274 -0.250480 +0.152399 1.658607 -0.088739 -5.101358 -44.078457 10.554264 1.762973 -0.619790 -2.705960 -4.132512 0.163494 5.248610 -1.065822 0.808932 -0.239849 0.811836 0.623993 0.841892 -1.365934 2.949719 -13.787544 -3.244636 -0.017868 4.303505 -0.331706 -0.644221 -0.022773 0.671724 0.259055 0.532400 2.976861 -0.084707 -9.119883 1.366517 -1.515588 13.196385 4.765889 -2.713930 28.262587 6.814708 12.806744 5.025874 -14.482751 17.505720 -14.744325 14.495887 -16.764977 -12.363049 -92.717079 -62.055065 55.235191 46.282558 -50.457123 -31.692688 -0.660865 -0.094262 0.338789 -3.421954 14.127910 -18.576777 82.206139 59.136444 48.684807 -12.521753 61.617619 -11.249223 -0.906939 -0.322045 -0.224770 +0.155542 1.657279 -0.085214 -4.992289 -43.029907 10.302081 1.799044 -0.734454 -3.166370 -4.538305 0.242601 6.367111 -1.036913 0.752425 -0.246099 0.799819 0.595353 0.851504 -1.727636 3.030383 -13.933911 -3.180070 0.005409 5.350820 -0.342926 -0.582150 -0.018190 0.625031 0.202747 0.512445 3.246763 -0.343732 -8.779749 1.318521 -1.792602 13.138346 4.421697 -2.928024 27.262768 7.133666 12.467698 6.503696 -14.343180 17.727160 -15.214037 13.763721 -18.234430 -13.430535 -90.439125 -59.598083 50.590897 32.098812 -54.040592 -24.599171 -0.596401 -0.113991 0.388799 -1.226582 14.862134 -17.865034 81.529343 55.168659 42.481625 -3.667370 60.634468 -6.241711 -0.865408 -0.278168 -0.215349 +0.158491 1.655743 -0.081319 -5.068333 -41.067970 10.106946 2.219613 -0.983507 -3.892625 -4.928264 0.300052 8.002980 -0.974695 0.673846 -0.249245 0.785369 0.561364 0.864256 -1.804403 3.097839 -13.968277 -3.114265 0.019697 6.572827 -0.362699 -0.512554 -0.022638 0.559440 0.124588 0.503094 3.246873 -0.894110 -8.172311 1.569622 -2.382916 12.990288 4.773133 -3.400424 25.807117 7.534362 11.780448 8.253345 -14.297837 18.063457 -15.435966 12.291859 -20.430418 -13.915789 -87.921021 -56.758984 44.783585 17.719345 -55.451141 -16.588863 -0.510555 -0.109447 0.436906 0.317219 15.617240 -17.052387 78.412018 50.447380 34.290943 8.714778 60.411060 0.767698 -0.795650 -0.242457 -0.184958 +0.162926 1.654540 -0.078211 -4.871679 -38.688713 9.761529 2.260157 -1.424712 -5.083307 -4.831028 0.272306 10.155741 -0.929159 0.591818 -0.264899 0.778132 0.545931 0.891141 -2.257285 3.204778 -14.475119 -2.807207 0.011261 8.639344 -0.386443 -0.438901 -0.028916 0.507698 0.036384 0.489523 3.615349 -1.483473 -7.302910 1.715158 -2.932990 12.817417 4.830313 -3.806264 24.267712 7.908114 10.728236 9.849509 -14.754625 18.273989 -16.239548 10.317590 -21.980553 -14.548903 -85.792686 -53.839848 39.431683 2.632618 -54.322548 -7.791092 -0.432590 -0.123592 0.486953 1.359591 15.725340 -16.802837 77.041733 45.500538 26.988073 19.085180 56.334438 5.642725 -0.736002 -0.196466 -0.155901 +0.167670 1.652201 -0.075964 -4.816630 -36.790577 9.367983 2.466438 -1.855611 -6.022723 -5.049363 0.254085 12.265924 -0.890086 0.510714 -0.288790 0.798678 0.555843 0.921003 -2.412832 3.453909 -15.473419 -2.841933 0.052842 11.852003 -0.429361 -0.365020 -0.042164 0.468560 -0.055111 0.493362 4.239603 -1.800911 -6.213076 1.862685 -3.158482 12.595392 4.732828 -3.848646 22.623755 8.044323 9.594744 11.559546 -14.349407 17.979103 -17.310083 8.532695 -23.883814 -15.057103 -83.152710 -51.063713 33.961685 -8.430391 -50.342369 -1.799217 -0.341301 -0.123655 0.553789 2.455341 15.799919 -16.267269 75.115257 40.511330 19.463898 24.019423 50.752930 6.489604 -0.683317 -0.154140 -0.114255 +0.172909 1.649592 -0.074148 -4.478417 -35.145138 8.876101 2.365196 -2.374192 -7.190221 -5.518082 0.285005 14.595009 -0.847710 0.429252 -0.295581 0.817548 0.578810 0.953382 -2.935126 3.624351 -16.941275 -2.514184 0.023516 15.458811 -0.462106 -0.291627 -0.037040 0.440824 -0.127184 0.480081 4.448170 -2.098420 -4.941921 2.011973 -3.327550 12.311473 4.844123 -3.878735 21.023130 7.943216 8.780449 12.722813 -14.475996 17.711874 -18.331877 5.413836 -24.815405 -15.323556 -80.279602 -48.015671 28.767843 -16.461260 -44.307777 1.851089 -0.264389 -0.148040 0.597518 3.838594 15.699075 -15.997826 72.945160 36.886215 14.157047 24.673544 44.276363 5.275273 -0.636407 -0.109438 -0.081147 +0.177853 1.645390 -0.071415 -3.791245 -33.846031 8.387157 1.852908 -2.899937 -8.296381 -6.096842 0.341151 16.631353 -0.808238 0.355307 -0.302025 0.831616 0.598727 0.951845 -3.781037 3.740919 -19.018318 -2.164133 -0.041196 19.654463 -0.487705 -0.232848 -0.030307 0.416189 -0.179527 0.467214 4.306993 -2.352704 -3.638881 2.095264 -3.466448 11.781212 5.023437 -3.875977 19.177557 7.386358 8.591800 13.662288 -13.834954 17.137136 -18.778818 1.960691 -25.163218 -14.632752 -78.016800 -44.202263 23.552284 -19.917215 -38.329239 2.590349 -0.187717 -0.154263 0.635079 5.163298 15.574767 -15.607550 70.591850 33.865841 10.379823 24.017225 37.946579 3.954708 -0.597360 -0.074694 -0.049744 +0.183308 1.641796 -0.068703 -3.681135 -33.151340 8.070025 1.865900 -3.263278 -9.093833 -7.076929 0.525211 18.374027 -0.798733 0.300127 -0.318664 0.838479 0.605428 0.959621 -4.173430 4.119389 -21.660055 -1.905512 -0.082959 24.898504 -0.506839 -0.166358 -0.028408 0.397086 -0.230968 0.442493 4.744067 -2.604010 -2.125001 2.256796 -3.581299 11.288576 5.008955 -3.833755 17.503284 6.419683 8.837600 14.846249 -13.476909 16.512730 -19.515322 -1.287033 -25.412186 -13.747530 -75.364235 -40.273064 18.525545 -19.840181 -32.175537 1.762491 -0.122956 -0.192694 0.686309 6.177608 15.792447 -15.426707 68.357788 31.555937 7.664391 21.241856 31.155571 2.268438 -0.569114 -0.019661 -0.039187 +0.189393 1.637760 -0.065810 -3.720657 -32.206123 7.651282 2.004519 -3.678839 -9.836908 -7.989707 0.724398 20.425817 -0.760992 0.249768 -0.309020 0.846747 0.610231 0.966991 -4.569657 4.494790 -24.502705 -1.122313 -0.321967 30.765654 -0.523824 -0.115091 -0.017938 0.373039 -0.266962 0.427568 5.576309 -2.850151 -0.464693 2.555452 -3.584078 10.752144 4.959300 -3.723801 15.846239 5.325629 8.634088 15.645189 -13.433267 15.707110 -19.426193 -5.470442 -25.574333 -12.463014 -71.813065 -36.774284 14.242193 -18.183001 -26.963381 0.834180 -0.061498 -0.211856 0.711779 7.203215 16.091066 -14.941464 65.143066 29.111261 5.211731 18.671806 25.223808 1.173900 -0.532027 0.009685 -0.019613 +0.194395 1.632803 -0.063588 -3.231553 -30.929041 6.858565 1.773720 -4.101543 -10.373734 -8.927192 0.938995 22.065350 -0.725303 0.186942 -0.318703 0.872240 0.637902 0.986968 -5.462763 4.586460 -27.163103 0.127730 -0.821714 36.262287 -0.552885 -0.064471 -0.024821 0.358027 -0.325464 0.425053 5.291738 -2.864788 1.258097 2.988086 -3.640156 10.240232 5.567379 -3.770025 14.406233 4.510455 8.365150 16.270124 -13.276519 15.029097 -20.173136 -7.593249 -24.577877 -11.412386 -69.818794 -33.859203 11.203640 -15.123612 -23.856007 -0.217358 0.006055 -0.206937 0.740991 7.802942 15.485609 -14.418867 62.464172 26.800749 3.287712 15.403626 20.315866 0.300987 -0.492762 0.030450 0.016900 +0.199468 1.629317 -0.061418 -2.898714 -29.681501 5.870984 1.895730 -4.475026 -10.590205 -10.181825 1.255313 23.522692 -0.724974 0.146599 -0.336209 0.882914 0.638385 1.002475 -6.115812 4.700952 -29.537872 1.648692 -1.540842 41.458977 -0.568589 -0.009576 -0.027956 0.343671 -0.376250 0.405295 4.895731 -2.932024 3.379297 3.563492 -3.887345 9.761519 6.236234 -3.949844 12.988148 3.558750 8.314308 17.141518 -13.135340 14.367659 -21.049139 -9.910426 -23.669518 -10.299650 -66.558167 -30.758142 8.031378 -11.624775 -21.327078 -1.136563 0.063747 -0.232437 0.790183 9.075508 14.934098 -13.808750 59.144989 24.671946 1.479747 11.770635 15.992798 -0.301133 -0.470865 0.071178 0.022373 +0.203855 1.624201 -0.058090 -2.629579 -28.410467 5.047889 1.947702 -4.909387 -10.967044 -11.035223 1.555276 25.477037 -0.688370 0.129967 -0.322121 0.851673 0.598775 0.973703 -6.486128 4.818720 -32.389385 2.907674 -2.365039 47.160591 -0.562033 0.015903 -0.023939 0.302312 -0.378122 0.398145 4.998044 -3.110595 5.404242 4.020192 -4.073726 9.107855 6.576442 -4.041526 11.299379 2.619753 8.141638 17.236959 -12.970862 13.684276 -20.442793 -12.173937 -22.142656 -9.391544 -63.350090 -27.746367 5.657024 -9.421108 -18.544302 -1.481310 0.088213 -0.236741 0.793615 10.041064 13.447751 -13.078409 56.055981 22.263443 0.006051 9.110870 12.424438 -0.542901 -0.438307 0.093594 0.031726 +0.206558 1.620261 -0.054102 -2.579285 -27.030783 3.905214 2.193041 -5.118251 -10.440008 -11.731739 1.839855 26.942944 -0.670667 0.106306 -0.319521 0.839352 0.575707 0.980028 -5.922709 5.223995 -34.627769 3.335677 -2.860260 52.538612 -0.569161 0.054167 -0.021103 0.271084 -0.405383 0.389587 5.081206 -3.273753 7.688556 4.604631 -4.311306 8.630200 6.929250 -4.148957 9.902285 2.230366 7.774840 17.572731 -13.491461 13.308335 -20.964165 -13.982994 -20.404556 -8.745137 -59.872799 -24.946609 3.649870 -7.365471 -16.181147 -1.686979 0.119134 -0.259946 0.819565 9.670031 11.711251 -12.443888 53.719810 20.020018 -1.216445 6.452978 9.831444 -0.684007 -0.413292 0.126729 0.037462 +0.209238 1.617720 -0.049618 -2.448963 -26.234571 2.501436 2.375989 -5.115589 -9.258163 -12.836029 2.252694 27.794682 -0.665110 0.086009 -0.329235 0.833262 0.564884 0.964623 -5.266737 5.865745 -36.718525 4.138410 -3.463048 57.418667 -0.572619 0.075839 -0.026541 0.255885 -0.426751 0.383084 5.098778 -3.299753 10.047618 5.168306 -4.453836 8.310069 7.203218 -4.160669 8.788762 1.265124 7.959083 17.824543 -13.343112 12.685974 -21.318361 -15.072963 -18.624985 -8.199430 -56.492081 -22.251076 1.979178 -5.183663 -14.359780 -1.866831 0.152452 -0.261217 0.841903 9.763039 9.814312 -12.009745 50.379032 18.102114 -2.084780 4.678450 7.296798 -0.614830 -0.396773 0.144943 0.043737 +0.213050 1.616395 -0.044062 -2.477626 -25.583950 1.134860 2.446629 -5.093029 -7.781987 -13.718141 2.549747 28.231613 -0.650031 0.086525 -0.313719 0.812903 0.526092 0.965160 -4.345796 6.413343 -37.727325 5.292819 -4.207455 59.874550 -0.569063 0.094820 -0.020372 0.225577 -0.431553 0.377287 5.368691 -3.518675 12.142909 5.688255 -4.636598 8.160872 7.295374 -4.185848 7.942498 0.932564 7.465970 17.837507 -14.010962 12.280703 -21.185457 -16.195415 -16.694933 -7.628699 -52.625534 -19.637558 0.561332 -3.642333 -13.151987 -1.899352 0.165656 -0.279686 0.853868 8.520665 8.301280 -11.396812 47.538345 16.361395 -2.569279 3.455353 4.880548 -0.454788 -0.378742 0.162765 0.038497 +0.217336 1.616453 -0.038420 -2.286617 -25.117910 -0.636689 1.986293 -5.084488 -5.939081 -14.112706 2.645925 28.494408 -0.632304 0.063293 -0.300490 0.807424 0.519311 0.950874 -3.194491 6.859639 -37.570408 6.066957 -4.599330 60.515621 -0.570016 0.119315 -0.009515 0.213131 -0.435593 0.357969 5.798743 -3.771970 14.191962 6.053557 -4.701538 8.294361 7.031574 -4.094211 7.448591 0.239990 7.740993 17.806854 -13.703785 11.927844 -21.271889 -16.054817 -15.618456 -6.624852 -48.945755 -16.865530 -0.683796 -2.067552 -12.982361 -1.973437 0.199944 -0.290488 0.866414 6.860387 7.078993 -10.348022 44.608337 14.283694 -3.020995 2.963342 3.447149 -0.298268 -0.360637 0.177405 0.035423 +0.221250 1.615319 -0.030837 -2.166203 -24.630690 -1.663722 1.515905 -5.174159 -4.827649 -14.471898 2.769121 29.009676 -0.600593 0.070499 -0.270768 0.743624 0.453749 0.892089 -1.901205 7.162938 -37.692253 6.769125 -4.928093 60.020603 -0.535954 0.111024 0.003509 0.173496 -0.396985 0.339500 6.378611 -4.183243 15.112103 6.172395 -4.737058 8.396427 6.765175 -3.990396 7.125211 0.108338 7.708813 16.786697 -13.546597 11.916632 -19.829775 -15.221964 -13.651916 -5.751749 -46.389057 -14.438077 -1.558282 -0.554936 -13.152649 -2.043138 0.188790 -0.289363 0.838840 4.676977 4.906705 -9.400670 42.898899 12.146390 -3.640697 1.656223 3.159911 -0.287754 -0.340275 0.179447 0.018132 +0.224661 1.615004 -0.023049 -2.055101 -23.829338 -2.975442 1.081498 -5.366776 -3.480710 -14.614173 2.810500 29.752996 -0.580074 0.087083 -0.245907 0.686938 0.390968 0.825781 -0.878860 7.192424 -37.356110 8.201337 -5.672806 58.829304 -0.500118 0.103878 0.024154 0.136142 -0.348393 0.324482 7.110904 -4.645409 16.056213 6.283606 -4.748927 8.607339 6.359359 -3.813424 6.912333 -0.444602 7.587723 15.901487 -12.809057 11.334287 -18.524189 -14.213674 -11.942996 -5.137749 -43.866344 -12.573420 -2.079563 0.714412 -13.109380 -2.073658 0.173702 -0.291662 0.817658 3.064054 2.571803 -8.369623 40.710045 9.655045 -4.404863 0.360695 3.894627 -0.319801 -0.334030 0.190125 0.002431 +0.228723 1.614228 -0.013135 -2.041801 -22.954294 -4.169893 0.394290 -5.555633 -1.919752 -14.591467 2.741154 30.261702 -0.562184 0.104488 -0.218997 0.637668 0.336687 0.781187 0.177427 7.040009 -36.515480 9.750964 -6.347628 56.410931 -0.475205 0.096511 0.041173 0.103359 -0.310694 0.316994 8.046453 -5.338715 16.680611 6.365494 -4.895295 8.906464 5.858542 -3.778972 6.917534 -0.668868 7.227249 14.600461 -13.153727 11.007820 -18.080950 -13.998933 -9.715944 -4.894775 -40.921242 -10.897231 -2.568496 1.856445 -13.603149 -2.119638 0.155882 -0.300594 0.800210 1.558456 0.042937 -7.874634 38.117565 7.941613 -4.851634 -0.943324 4.074091 -0.304717 -0.327695 0.199637 -0.012387 +0.233018 1.613229 -0.002619 -2.056665 -22.119368 -5.023495 -0.362816 -5.720055 -0.578047 -14.546800 2.626470 30.498734 -0.509479 0.104380 -0.184608 0.601993 0.300938 0.747661 1.292220 6.826552 -35.948139 11.114471 -6.784885 53.397564 -0.454093 0.078111 0.056263 0.068971 -0.284203 0.324373 9.215619 -6.142268 16.680567 6.343857 -4.990275 9.155828 5.281582 -3.772311 7.048426 -0.810808 6.742489 13.154643 -13.888503 10.898558 -17.038511 -13.540312 -7.637950 -4.623315 -38.357166 -9.490891 -2.898944 3.393082 -13.749544 -2.143231 0.142634 -0.272378 0.754306 -0.374009 -2.491237 -7.236812 35.854542 6.106411 -5.189278 -1.819005 4.761631 -0.318013 -0.305341 0.178193 0.001749 +0.236862 1.612537 0.007657 -1.725216 -21.339085 -5.937430 -1.456206 -5.890038 0.603888 -14.389922 2.487462 30.867016 -0.467344 0.106356 -0.154289 0.573984 0.274580 0.705853 2.280473 6.587149 -35.320629 11.818334 -6.785094 50.434319 -0.430463 0.055359 0.069255 0.047685 -0.249134 0.325109 10.032748 -6.845631 16.477690 6.122768 -5.138239 9.398839 4.615995 -3.864534 7.240083 -1.097282 6.626784 11.815160 -13.572453 10.636536 -15.706458 -12.353410 -5.602449 -4.248758 -36.042843 -8.030957 -3.102039 4.601740 -14.035872 -2.149399 0.133448 -0.237907 0.710573 -1.906721 -4.765110 -6.783354 33.498581 4.657531 -5.353775 -2.893635 5.280101 -0.335961 -0.289823 0.150717 0.009177 +0.241572 1.611866 0.017851 -1.249826 -20.869225 -6.807131 -2.470140 -6.057405 1.476139 -14.745549 2.538543 31.418257 -0.432540 0.122809 -0.118299 0.539019 0.236929 0.654842 3.155160 6.387020 -34.742477 12.157935 -6.587288 47.521358 -0.401949 0.028409 0.084073 0.027185 -0.198550 0.322055 11.136605 -7.642877 16.154589 5.693991 -5.246580 9.628061 3.579639 -3.931761 7.420284 -1.653527 6.734112 10.493245 -13.025815 10.277324 -13.970187 -10.855429 -3.764762 -3.729257 -33.783527 -6.491786 -3.186473 5.447280 -14.330245 -2.110219 0.118431 -0.211203 0.668036 -3.683405 -6.718032 -6.234053 31.197969 3.397299 -5.334574 -3.333689 6.100046 -0.351692 -0.279308 0.125034 0.004580 +0.245438 1.611745 0.027108 -0.406381 -20.720381 -8.002530 -3.568417 -6.142345 2.381830 -15.562885 2.771184 31.928183 -0.431420 0.139155 -0.105472 0.504654 0.206354 0.612895 3.927871 6.285587 -33.950470 12.257437 -6.179771 44.537949 -0.377832 0.010202 0.097563 0.016162 -0.162029 0.312303 11.388369 -8.015214 16.041689 5.233425 -5.344669 10.024038 2.808575 -3.967666 7.848491 -1.716463 6.841720 9.684943 -12.925175 10.299583 -13.257487 -9.800729 -2.117863 -3.490895 -31.199598 -5.060237 -3.232592 6.552756 -14.953437 -2.155915 0.095794 -0.212339 0.647986 -4.967220 -8.380969 -6.015828 28.897964 2.465482 -5.281107 -4.415234 5.208174 -0.258431 -0.287061 0.123772 -0.011843 +0.249244 1.612171 0.036555 0.191367 -20.605526 -9.026384 -4.248478 -6.148026 3.274610 -16.468519 3.030528 32.124470 -0.422023 0.168055 -0.076619 0.478701 0.179473 0.574375 4.985765 6.271129 -32.759853 12.047461 -5.575088 40.923805 -0.353344 -0.003018 0.115113 0.009624 -0.103811 0.301709 11.800886 -8.365379 15.511666 4.840786 -5.417903 10.482122 2.078977 -3.982810 8.514678 -2.136933 7.185528 9.123150 -11.892690 9.930886 -12.057791 -8.794961 -0.788652 -3.314827 -29.166594 -3.931620 -3.237716 8.134041 -15.434363 -2.293288 0.070375 -0.218305 0.620836 -5.318571 -9.627439 -5.699814 25.206091 1.572420 -4.848063 -4.352842 4.992142 -0.188344 -0.293107 0.122209 -0.029410 +0.251936 1.611677 0.046022 1.085115 -20.448780 -9.963815 -4.886878 -6.181475 3.799244 -17.912523 3.479262 32.480518 -0.424365 0.174109 -0.074736 0.492259 0.198889 0.570425 5.998796 6.188677 -31.345177 11.295822 -4.744587 36.859245 -0.355300 -0.017430 0.108482 0.028617 -0.095045 0.306364 12.166010 -8.641418 14.318472 4.200000 -5.463840 11.083456 1.172160 -4.028099 9.788781 -2.614137 7.395840 8.664772 -11.645167 9.604754 -12.155647 -7.988835 0.250729 -3.292256 -26.588480 -3.090108 -3.088936 8.976839 -15.737493 -2.332803 0.069957 -0.200423 0.609161 -4.957414 -10.655613 -5.491759 21.727760 0.616460 -4.410783 -4.809480 5.624505 -0.204448 -0.296788 0.102599 -0.026947 +0.254568 1.612441 0.054535 1.736750 -20.427681 -11.156069 -5.374030 -6.222365 4.504257 -19.052168 3.874412 33.023182 -0.437924 0.150381 -0.100211 0.518343 0.239356 0.593834 7.190833 6.185464 -29.300119 10.783119 -3.999894 32.469421 -0.371075 -0.006022 0.088833 0.051988 -0.131293 0.303353 12.465596 -8.790054 13.584994 3.781213 -5.458520 11.813186 0.470457 -3.974958 11.109085 -2.747384 7.548503 8.673517 -11.898371 9.585697 -13.587842 -7.373384 0.819262 -3.283963 -24.075962 -2.472735 -2.910372 9.845958 -15.636508 -2.342551 0.087705 -0.194055 0.618596 -5.216070 -11.429153 -5.208989 19.450302 -0.398579 -4.194067 -5.936078 6.376239 -0.240710 -0.294362 0.102938 -0.015351 +0.256984 1.611383 0.064363 2.892162 -20.001850 -12.208860 -6.475965 -6.325407 4.848981 -20.120022 4.218717 33.639622 -0.471859 0.164892 -0.121375 0.539506 0.249544 0.620807 7.586610 5.788868 -27.347414 10.269388 -3.381520 28.162188 -0.379934 -0.012640 0.076778 0.068466 -0.149705 0.314046 11.988592 -8.701845 12.435961 3.351420 -5.639734 12.286113 0.189429 -4.091787 12.314336 -2.659556 7.639043 8.754080 -12.352654 9.730159 -14.466087 -7.064513 1.410851 -3.125251 -21.823694 -1.374560 -2.774240 10.792620 -16.393957 -2.506936 0.083639 -0.192459 0.639503 -5.042308 -11.842555 -5.062421 16.680347 -0.995635 -3.812165 -6.916070 6.431099 -0.238458 -0.312520 0.098612 -0.020152 +0.259105 1.607461 0.075289 3.924113 -19.865732 -12.489672 -7.217910 -6.430526 4.354159 -21.375229 4.735176 34.472313 -0.499915 0.194250 -0.133975 0.542332 0.238445 0.632616 7.996422 5.566041 -26.023098 9.874848 -2.810990 23.790653 -0.369057 -0.045052 0.063140 0.079297 -0.146567 0.323266 12.182547 -8.621762 10.518632 2.661422 -5.556366 12.418596 -0.555461 -4.011299 13.401420 -2.376703 7.685660 8.586832 -12.654561 10.033906 -13.944119 -6.880316 2.327541 -2.986557 -19.112417 -0.204298 -2.457000 11.087448 -18.449564 -2.716679 0.058582 -0.170983 0.632414 -4.668498 -12.376065 -4.947219 13.996045 -1.585193 -3.327476 -7.717884 7.298539 -0.326011 -0.331249 0.070305 -0.030487 +0.260520 1.602736 0.085844 4.806239 -19.632235 -13.064582 -7.715621 -6.342493 4.432799 -22.586929 5.274814 34.970837 -0.489861 0.185404 -0.143962 0.552735 0.251568 0.656764 8.671461 5.407711 -24.186220 8.888281 -2.175031 19.701267 -0.375103 -0.054682 0.048656 0.082436 -0.172786 0.338558 11.768655 -8.262827 9.238684 2.377448 -5.469508 12.582779 -0.662310 -3.947859 14.229674 -1.736867 7.117267 8.668033 -13.515453 10.301500 -14.036817 -6.721479 2.992761 -2.866513 -16.485685 0.725539 -2.119512 11.011719 -19.122166 -2.659690 0.055014 -0.146449 0.618094 -5.208820 -12.966419 -4.296618 11.950583 -2.782593 -2.860738 -7.771271 10.034022 -0.503808 -0.323195 0.049335 -0.010854 +0.261532 1.596785 0.096621 5.672128 -18.970856 -13.546414 -8.245645 -6.402678 4.487336 -23.962164 5.919540 35.867405 -0.500612 0.185703 -0.158949 0.570092 0.266128 0.686847 9.002768 5.130283 -22.726898 7.715869 -1.720452 16.748243 -0.381572 -0.063968 0.036125 0.094156 -0.196960 0.349873 10.852424 -7.770256 7.820620 2.277093 -5.488703 12.662539 -0.247948 -3.966291 15.092892 -1.069332 6.490489 9.018487 -14.107321 10.396463 -14.210186 -6.334041 3.310056 -2.894783 -14.495990 0.994944 -1.739919 10.128114 -18.132761 -2.339853 0.050780 -0.135380 0.618027 -5.528442 -13.431081 -3.641950 9.321138 -4.092422 -2.240047 -7.630692 11.321389 -0.535636 -0.327795 0.033850 -0.002989 +0.262422 1.590564 0.107247 6.239224 -18.439138 -13.832105 -8.276051 -6.393949 4.521906 -25.458183 6.643927 36.547966 -0.496688 0.175647 -0.160750 0.577563 0.277503 0.699962 9.444031 4.985506 -21.522278 6.333249 -1.344602 14.636082 -0.385986 -0.062631 0.034807 0.097818 -0.211049 0.349949 10.432845 -7.430657 6.505866 2.204266 -5.445946 12.615464 -0.008785 -3.937363 15.670188 -0.808022 5.748035 9.652847 -14.600969 10.175768 -14.012423 -6.143517 2.936904 -2.591632 -12.561704 1.405478 -1.361714 8.655087 -15.916533 -1.840423 0.055462 -0.137581 0.613813 -5.586308 -13.156336 -2.825740 7.037210 -5.722049 -1.792325 -8.625985 11.727399 -0.570697 -0.324443 0.029863 0.004498 +0.263990 1.583835 0.115625 6.533475 -17.922400 -14.316073 -7.979004 -6.343099 4.786395 -27.093172 7.461286 37.119217 -0.493312 0.173595 -0.156623 0.559692 0.264990 0.673086 9.796853 4.936187 -20.476849 5.442249 -1.156112 13.837215 -0.376387 -0.056508 0.047114 0.086998 -0.195152 0.339814 10.242302 -7.191998 6.184825 2.204404 -5.354572 12.535324 0.027349 -3.832601 15.604261 -0.881193 5.293744 10.168983 -14.078119 9.615062 -13.474258 -5.599453 2.358453 -2.155710 -10.843760 1.645387 -0.994144 7.265853 -13.519618 -1.419459 0.052831 -0.154183 0.611387 -5.829693 -12.584954 -2.257865 5.677421 -6.869461 -1.663387 -10.191896 10.472950 -0.491181 -0.326507 0.047627 0.001029 +0.265562 1.577186 0.122715 6.380319 -17.821911 -14.912741 -7.214255 -6.308482 5.186727 -28.627035 8.357115 37.895264 -0.502947 0.189029 -0.148456 0.539859 0.231104 0.662457 10.433414 5.125310 -19.600311 4.987060 -1.078429 14.101810 -0.372256 -0.046240 0.052173 0.071082 -0.183588 0.332093 10.780457 -7.219910 6.421147 2.165573 -5.227078 12.534270 -0.395986 -3.628470 15.337234 -0.903387 4.694060 10.529661 -13.867648 9.058832 -13.140133 -5.473867 1.789398 -1.842234 -9.069353 1.955936 -0.692501 6.765570 -11.384302 -1.172269 0.053850 -0.183758 0.631207 -6.667338 -12.042867 -1.616639 5.184549 -7.902985 -1.719086 -11.263196 10.000395 -0.429110 -0.327843 0.070151 -0.018191 +0.267315 1.569778 0.129112 5.749510 -17.947865 -14.876196 -5.851326 -6.331138 5.040051 -29.888397 9.278985 38.921448 -0.474540 0.157612 -0.148240 0.569026 0.268236 0.676936 11.234821 5.722392 -20.142626 4.913271 -1.063747 15.794083 -0.385339 -0.048800 0.049852 0.078833 -0.207793 0.343647 11.758659 -7.348148 6.340791 2.178893 -4.991047 12.479827 -0.749495 -3.448191 15.302140 -0.682128 4.096339 10.429544 -13.748868 8.698037 -13.057429 -5.074018 1.774790 -1.874582 -7.806669 1.625470 -0.471274 5.780463 -9.237125 -0.904145 0.077873 -0.146096 0.616830 -7.607245 -12.092249 -1.168332 4.679462 -8.638221 -1.543763 -11.696060 10.721169 -0.482377 -0.313834 0.042196 0.013536 +0.268910 1.563772 0.133277 5.102214 -18.261744 -14.989128 -4.493482 -6.281982 4.900490 -31.179941 10.266704 39.922405 -0.422486 0.141373 -0.125782 0.568139 0.268646 0.660581 11.452759 6.226135 -20.913805 5.716265 -1.264047 17.816898 -0.393678 -0.046054 0.063594 0.051667 -0.198186 0.366875 12.710560 -7.537663 7.008316 2.244766 -4.738725 12.402573 -1.175083 -3.204752 14.764139 -0.712356 3.531544 10.237663 -13.413303 8.135630 -12.556401 -4.845258 1.259388 -1.474052 -7.046921 1.925379 -0.417065 5.304293 -7.158357 -0.725759 0.087746 -0.122387 0.600189 -8.791560 -11.651553 -0.099968 4.421490 -9.981215 -1.359460 -10.710456 12.106461 -0.460870 -0.293659 0.037225 0.048437 +0.271011 1.560430 0.136949 4.697536 -18.423611 -15.267931 -3.937472 -6.205709 5.060474 -31.456608 10.751298 40.701042 -0.399266 0.143924 -0.117422 0.520904 0.218609 0.623662 10.952353 6.396293 -21.324078 7.208697 -1.647410 19.398800 -0.376667 -0.046153 0.068833 0.013533 -0.184599 0.366184 12.932963 -7.529281 8.156934 2.585635 -4.603326 12.251548 -1.017434 -3.043784 13.895927 -0.493754 3.309174 10.327525 -13.491726 8.260924 -11.463746 -4.908482 0.669472 -1.020941 -7.123051 2.385113 -0.504608 5.168424 -5.807739 -0.632258 0.076307 -0.125171 0.589326 -10.074076 -10.977517 0.428025 4.954909 -10.342515 -1.620351 -11.143819 11.153753 -0.333773 -0.279048 0.050680 0.047705 +0.271943 1.558464 0.139369 4.701903 -18.551880 -15.282547 -4.043174 -6.009355 4.924394 -30.971451 10.876100 41.320034 -0.432705 0.161970 -0.126431 0.499012 0.195372 0.622888 10.194672 6.491040 -21.727839 8.407451 -1.928726 20.240858 -0.370883 -0.039833 0.072352 0.009404 -0.178451 0.355870 12.588210 -7.230810 8.310842 2.648266 -4.500310 12.434989 -0.794833 -2.930981 14.160366 0.025211 3.324046 10.314309 -14.083448 8.724505 -12.161400 -5.362034 0.395737 -0.855348 -6.332723 2.787757 -0.322037 4.268990 -5.250574 -0.593896 0.054698 -0.168896 0.609935 -9.795193 -10.363143 0.388712 4.674984 -9.632312 -1.531737 -10.542274 10.957416 -0.288951 -0.296860 0.082814 0.021042 +0.271350 1.557435 0.141191 4.866178 -18.754177 -14.911173 -4.413141 -5.829868 4.291426 -30.403328 10.966003 42.058308 -0.443076 0.162847 -0.135465 0.496240 0.209208 0.629194 9.746473 6.590886 -21.979713 8.958549 -1.952113 20.073042 -0.368603 -0.040893 0.070331 0.021396 -0.177149 0.351628 11.625760 -6.701251 7.977545 2.728663 -4.390416 12.595148 -0.174122 -2.894235 14.726892 0.475400 3.593171 10.128131 -14.531621 9.306484 -12.766029 -5.640609 0.840139 -0.923499 -6.266956 3.086096 -0.221611 3.600195 -5.750442 -0.585954 0.034334 -0.180985 0.599332 -8.850672 -10.132401 -0.220471 3.726614 -7.886056 -1.196005 -9.602070 9.824903 -0.204288 -0.304721 0.090413 0.018053 +0.270624 1.558976 0.141855 4.702141 -19.053236 -14.384278 -4.415975 -5.643900 3.719175 -29.743181 10.891949 42.371990 -0.467203 0.202572 -0.131737 0.477178 0.180415 0.614331 9.676705 6.627028 -21.723570 9.503357 -1.894399 18.747835 -0.350951 -0.057369 0.070556 0.023243 -0.141812 0.347057 11.220742 -6.430196 7.645423 2.674302 -4.319846 12.615208 -0.026985 -2.858220 14.937925 0.489133 3.992332 10.205354 -13.973082 9.419083 -11.967360 -5.423677 1.658094 -0.831925 -6.988938 3.735090 -0.181672 3.191122 -7.736469 -0.655280 0.002146 -0.193190 0.595066 -8.299221 -9.855960 -1.085185 3.824841 -5.498709 -1.199955 -9.165343 8.670361 -0.180918 -0.323850 0.091876 -0.007959 +0.269922 1.561616 0.140997 4.555770 -19.342144 -14.047582 -4.414412 -5.385990 3.318237 -29.494419 10.859699 42.231865 -0.492666 0.209197 -0.137513 0.494581 0.188470 0.623404 10.090039 6.664544 -21.057207 9.166448 -1.611408 16.985708 -0.349878 -0.065192 0.065160 0.044501 -0.145483 0.336497 10.774750 -6.179006 7.997629 2.765304 -4.189679 12.617057 0.178246 -2.758378 14.784556 0.270554 4.443264 10.026545 -13.477418 9.427879 -11.957512 -5.108586 2.557919 -1.056708 -8.722729 3.730608 -0.403459 3.220789 -9.435929 -0.753071 0.013643 -0.185955 0.608641 -8.267813 -9.953661 -2.072025 5.138704 -3.423807 -1.551119 -10.128530 8.562395 -0.314663 -0.335373 0.075550 -0.025827 +0.269873 1.564601 0.139700 4.490609 -19.488827 -13.573097 -4.599210 -5.061740 2.984394 -28.941542 10.625731 41.845757 -0.471325 0.195291 -0.129447 0.502002 0.202721 0.628204 10.613971 6.722864 -20.567158 8.240331 -1.278735 15.357640 -0.356053 -0.074055 0.072337 0.041762 -0.152517 0.348630 9.903635 -5.862104 8.455859 3.012755 -4.150947 12.518068 0.777431 -2.790006 14.417215 0.442027 4.229431 9.528186 -14.437084 9.750953 -12.091187 -5.485703 3.754303 -1.016181 -10.247355 4.713041 -0.688243 3.366843 -13.604311 -0.925722 0.015632 -0.167266 0.593708 -8.639348 -10.035387 -2.757028 6.858379 -1.634200 -1.842050 -10.581150 9.948848 -0.556240 -0.329964 0.059227 -0.008103 +0.270422 1.567832 0.138066 4.659094 -19.197525 -13.044544 -5.068776 -4.902409 2.437808 -28.315224 10.283175 41.516159 -0.474125 0.171340 -0.140275 0.529055 0.236669 0.654004 10.537061 6.465377 -20.141174 7.708049 -1.064868 13.489205 -0.368797 -0.052746 0.065490 0.060202 -0.180087 0.338810 9.260909 -5.600124 8.508336 2.984706 -4.083634 12.421692 0.997052 -2.794501 14.303719 0.456483 4.345447 9.565057 -14.154104 9.709458 -13.109565 -5.049250 4.453298 -1.191234 -12.520348 4.535635 -1.130031 3.057467 -15.342595 -1.053553 0.040708 -0.168739 0.605905 -8.760953 -10.089581 -3.432847 8.951596 -0.166791 -2.195595 -10.796643 11.474017 -0.817903 -0.323014 0.062987 -0.002441 +0.270709 1.572350 0.135282 4.903712 -18.720329 -12.927723 -5.512418 -4.715675 2.360307 -27.731236 9.908867 41.028164 -0.477246 0.156903 -0.135797 0.543174 0.249506 0.661473 10.562078 6.176329 -19.512178 6.723522 -0.852359 11.850883 -0.373618 -0.028442 0.074022 0.066938 -0.187156 0.320934 8.727835 -5.533699 9.303082 3.017570 -4.114739 12.357384 1.063477 -2.808567 13.785796 -0.230280 4.581351 9.294343 -13.841100 9.295181 -13.909553 -5.128854 4.818499 -1.252134 -15.042760 4.622199 -1.686208 3.063397 -16.986532 -1.240066 0.067187 -0.186711 0.623804 -8.651815 -9.830698 -3.828869 10.705467 0.940320 -2.467958 -10.391334 13.223785 -1.037322 -0.319277 0.078133 -0.009016 +0.269866 1.575906 0.131864 5.012701 -18.067570 -12.930072 -5.372014 -4.466617 2.459729 -27.557915 9.784141 40.590881 -0.471680 0.123901 -0.138377 0.574212 0.291438 0.664764 10.969322 6.010783 -18.855867 5.319505 -0.622480 10.490996 -0.391638 0.001657 0.076048 0.083402 -0.204681 0.308211 8.584237 -5.565907 9.963150 2.858659 -4.056869 12.347676 0.719612 -2.744308 13.410662 -1.246601 4.708414 9.410886 -13.012686 8.383268 -15.060739 -4.918186 5.557430 -1.442591 -17.879261 4.507411 -2.341301 2.711143 -20.059032 -1.497263 0.110704 -0.189878 0.641546 -8.360275 -9.815798 -4.342082 13.306748 1.874758 -2.877626 -9.748920 15.809143 -1.339157 -0.310267 0.090705 0.002475 +0.269067 1.577608 0.128291 4.854756 -17.224089 -12.678609 -4.929375 -4.249716 2.338118 -27.427681 9.810705 40.501656 -0.510225 0.125282 -0.146793 0.588786 0.301252 0.661127 11.230856 5.995492 -18.778353 4.613470 -0.515085 9.511367 -0.387786 0.020918 0.085521 0.104535 -0.200386 0.278312 8.805017 -5.612277 10.296252 2.588215 -3.922820 12.294346 0.189282 -2.574376 13.151801 -2.070658 5.127629 9.181087 -11.833127 7.709471 -16.023748 -4.859659 6.526140 -1.717043 -20.353580 4.569479 -2.956875 1.867328 -24.672789 -1.792726 0.130983 -0.216984 0.673472 -7.566781 -9.982410 -4.962242 15.302258 2.886967 -3.070437 -7.576477 17.814629 -1.349365 -0.329445 0.111982 -0.025851 +0.268151 1.578643 0.124979 4.924721 -16.216825 -12.316346 -4.654912 -4.099193 2.081384 -27.293919 9.813270 40.508087 -0.518692 0.121333 -0.146329 0.612912 0.322181 0.662344 11.254688 5.856118 -18.849113 3.853991 -0.424935 8.387758 -0.391993 0.027134 0.079190 0.125100 -0.199861 0.266143 9.296464 -5.855909 10.270830 2.076872 -3.821786 12.133689 -0.715761 -2.497265 12.911652 -3.107941 5.499163 9.035397 -10.670680 6.946041 -16.242304 -5.356088 7.391653 -2.020617 -22.447056 4.581450 -3.540382 0.937092 -29.087660 -2.009561 0.155863 -0.205404 0.681187 -5.987111 -9.926026 -5.926064 17.180820 4.220630 -3.234891 -5.696939 19.242548 -1.326080 -0.329774 0.102066 -0.029986 +0.266591 1.579432 0.121700 4.859987 -15.116076 -11.892836 -4.337543 -3.943635 1.862045 -26.815838 9.700011 40.556553 -0.550309 0.137075 -0.154518 0.616718 0.314161 0.663701 11.290402 5.702821 -18.866014 3.467953 -0.388343 6.996898 -0.385153 0.036794 0.063159 0.140074 -0.196789 0.244390 9.748339 -5.940992 10.234177 1.713615 -3.667295 11.879894 -1.411407 -2.315864 12.557143 -4.324069 5.610637 8.939877 -9.744225 5.958096 -16.518559 -6.014820 8.367314 -2.558960 -24.833706 4.231818 -4.135959 -1.290569 -33.533619 -1.890175 0.168390 -0.217421 0.698695 -4.295988 -9.792051 -7.065080 19.297012 5.752541 -3.388582 -3.293059 19.013685 -1.064755 -0.333000 0.109641 -0.054212 +0.265153 1.579010 0.117597 4.807269 -13.484087 -11.489164 -4.137255 -3.910171 1.484195 -26.640656 9.700407 40.882957 -0.524699 0.123896 -0.152201 0.611788 0.313108 0.634553 11.033256 5.473466 -19.081562 3.073832 -0.392885 5.774340 -0.383263 0.045491 0.065881 0.128239 -0.191084 0.247199 10.058475 -6.178772 10.699552 1.380789 -3.634420 11.328674 -2.047322 -2.317542 11.489108 -5.245039 5.890705 9.065252 -8.738092 5.379755 -16.304274 -6.554654 9.050294 -2.446669 -27.858294 4.502713 -5.078484 -2.840371 -38.116318 -1.847121 0.183287 -0.197429 0.691635 -3.358305 -9.287728 -7.815396 22.462214 6.949452 -3.673169 -0.902472 17.718649 -0.758431 -0.319374 0.112783 -0.037015 +0.263067 1.577762 0.112671 4.839050 -11.727406 -11.001966 -3.834506 -3.868490 1.047179 -26.601889 9.774189 41.098186 -0.555251 0.145967 -0.167107 0.601194 0.280988 0.630159 10.576476 5.318708 -19.630301 2.764632 -0.406107 4.771560 -0.373656 0.059760 0.056095 0.120614 -0.189217 0.236221 9.857733 -6.068625 10.935959 1.167104 -3.554060 10.888759 -2.255041 -2.191351 10.775484 -6.065399 5.740546 9.245204 -7.850909 4.512421 -16.660528 -7.384904 9.359608 -2.757970 -30.861374 3.993416 -5.845351 -4.789071 -41.530552 -1.607389 0.185243 -0.212717 0.718226 -1.855538 -8.743054 -8.532251 25.217468 7.756401 -3.927855 1.596913 16.263815 -0.455132 -0.326537 0.136692 -0.056528 +0.261143 1.575976 0.107234 4.716276 -9.624189 -10.479853 -3.739584 -4.021657 0.548557 -26.112980 9.656566 41.748707 -0.577937 0.177641 -0.168691 0.592469 0.254534 0.604110 10.067262 5.205142 -20.363268 2.529005 -0.425975 4.069306 -0.367860 0.063679 0.055492 0.114634 -0.160620 0.236597 9.802147 -5.967939 10.979726 1.028962 -3.471475 10.523513 -2.402449 -2.058527 10.217140 -7.130763 5.573710 9.386131 -6.328254 3.203214 -16.783506 -8.484742 8.957127 -3.029775 -33.953762 3.292509 -6.626560 -7.017308 -44.012741 -1.226701 0.182797 -0.223873 0.739750 0.458223 -7.724097 -9.000288 27.013821 8.032151 -4.087436 4.054659 14.477692 -0.181294 -0.339967 0.156815 -0.072456 +0.259165 1.574558 0.101996 4.670084 -7.338297 -10.300797 -3.895435 -4.159964 0.582911 -25.178894 9.282801 42.194668 -0.574634 0.164542 -0.163019 0.595336 0.262054 0.593679 9.369881 4.891112 -20.577894 2.434323 -0.441372 3.148265 -0.371523 0.090557 0.064148 0.115273 -0.154506 0.219829 9.431767 -5.738033 11.215042 0.952251 -3.324126 10.186142 -2.411686 -1.925531 9.619166 -7.584638 5.099226 10.090036 -4.995748 2.242509 -17.106539 -10.570612 7.410359 -3.246912 -36.271412 2.644565 -7.413864 -8.593998 -45.261997 -1.018589 0.203851 -0.247843 0.754265 3.029017 -5.952456 -8.946297 28.792797 7.620810 -4.380876 5.840284 12.691720 -0.065811 -0.335193 0.182003 -0.076656 +0.257453 1.572975 0.096937 4.423495 -4.274629 -10.228219 -3.893450 -4.529612 0.806820 -24.042398 8.784903 42.971752 -0.602301 0.173217 -0.169910 0.604564 0.269073 0.592192 8.490770 4.424596 -20.520472 2.333200 -0.479128 1.894250 -0.373120 0.099132 0.068494 0.129599 -0.148509 0.208769 9.601429 -5.766817 11.069847 0.767838 -3.276084 9.994817 -2.749448 -1.874221 9.415981 -7.590339 4.250040 10.665347 -4.116496 1.322327 -17.491209 -13.358111 5.516834 -4.044376 -37.003029 1.573470 -7.682173 -11.342407 -45.520077 -0.242328 0.208400 -0.270839 0.774051 6.133065 -4.313951 -9.096095 30.607971 7.255584 -4.688371 7.064330 11.090743 -0.062798 -0.352996 0.198008 -0.092206 +0.255317 1.571661 0.091013 4.161376 -0.834290 -10.446733 -3.975892 -4.945456 1.404327 -22.585575 8.050953 43.591694 -0.598067 0.133688 -0.180868 0.637798 0.322711 0.592698 7.473336 3.811609 -20.074999 2.251366 -0.496543 0.502736 -0.388241 0.113412 0.065960 0.156185 -0.169070 0.196699 9.818007 -5.846576 11.486664 0.534102 -3.122881 9.775263 -3.278131 -1.817143 8.961064 -7.373227 3.353601 11.186131 -2.572386 0.401389 -18.192921 -16.107353 3.484877 -5.033530 -36.699684 0.031289 -7.538526 -15.536052 -45.114285 1.264453 0.244420 -0.255367 0.777872 9.469285 -2.864840 -9.128163 32.647564 6.604574 -5.104352 7.752701 10.238572 -0.132748 -0.350924 0.191467 -0.076953 +0.252092 1.568182 0.083869 3.828655 2.023537 -10.117173 -3.468967 -5.236921 1.043330 -21.544348 7.663456 44.343750 -0.570909 0.120236 -0.179599 0.641667 0.328595 0.586454 6.861521 3.596713 -20.530397 1.824625 -0.504063 -0.356226 -0.391018 0.111424 0.060805 0.149690 -0.173360 0.206386 9.599277 -5.563447 11.689716 0.498821 -2.836181 9.123884 -3.280163 -1.643335 7.986537 -6.808116 2.327319 12.055702 -1.516734 -0.287329 -17.221106 -18.193110 1.999612 -5.655128 -37.793228 -1.652143 -7.366753 -18.318998 -44.206226 2.192696 0.253549 -0.227260 0.763649 11.832187 -1.481771 -8.924092 35.450375 6.280396 -5.441105 8.288719 9.165815 -0.190472 -0.337215 0.176245 -0.055525 +0.248471 1.563836 0.075336 3.721751 4.879978 -9.477643 -3.042947 -5.589835 -0.035472 -20.616989 7.408252 45.445644 -0.569450 0.122345 -0.178182 0.636411 0.314559 0.583278 5.886562 3.440506 -21.692240 1.394545 -0.511669 -0.788263 -0.385715 0.113102 0.061480 0.142489 -0.169409 0.200891 8.678166 -5.064479 11.722814 0.517921 -2.636893 8.438732 -2.811278 -1.523808 7.031809 -6.231205 1.407000 12.914324 -0.570672 -0.875652 -16.285509 -19.611526 0.930178 -6.256313 -40.387711 -3.769873 -7.148487 -19.535673 -43.007294 2.421836 0.257133 -0.225797 0.766129 13.758798 -0.240966 -8.900966 38.669701 6.552589 -5.696430 8.528685 8.375411 -0.248222 -0.335611 0.175233 -0.060468 +0.245359 1.559493 0.064334 3.802368 7.748441 -8.602230 -3.077964 -6.018642 -1.701371 -19.535862 7.034848 46.534950 -0.585153 0.133042 -0.183780 0.639225 0.302339 0.601442 4.462458 3.274096 -23.445269 1.319420 -0.507568 -0.766699 -0.391103 0.122348 0.046915 0.143838 -0.178774 0.197510 7.590504 -4.562126 11.586148 0.471536 -2.526878 7.937625 -2.249391 -1.468629 6.394088 -5.641346 0.345929 13.352772 0.160228 -1.450039 -16.353872 -20.509108 0.026955 -6.960819 -43.833282 -6.510883 -6.700148 -19.920439 -41.955315 2.320637 0.264619 -0.233541 0.786740 15.006690 1.179326 -9.170542 42.392532 7.808506 -5.653571 8.531593 7.388583 -0.286677 -0.334315 0.180338 -0.073642 +0.241244 1.555701 0.051790 3.836435 10.442585 -7.864359 -2.965987 -6.365535 -3.638305 -18.362511 6.733033 47.964172 -0.580414 0.108383 -0.186810 0.656527 0.329477 0.615084 3.173679 3.271018 -25.314598 0.993819 -0.473843 -0.018452 -0.403016 0.140582 0.047083 0.152491 -0.197651 0.190691 6.377074 -4.030612 11.631017 0.527748 -2.412762 7.654690 -1.498821 -1.430330 5.981479 -5.577111 -1.031725 13.792198 0.455371 -2.338925 -17.048454 -21.250620 -0.795422 -7.357775 -47.492542 -9.091974 -6.239094 -20.852167 -42.617462 2.610243 0.285258 -0.242645 0.793194 15.980021 3.321923 -9.372711 45.732521 9.482300 -5.338425 8.587959 7.091434 -0.304551 -0.328837 0.188460 -0.063272 +0.237530 1.553459 0.039456 3.863834 14.059731 -7.228943 -3.319113 -6.905756 -5.304638 -16.388081 5.875019 49.268200 -0.583609 0.089593 -0.195664 0.671628 0.358817 0.611225 0.932183 2.946592 -26.931299 1.248913 -0.446963 1.034098 -0.412388 0.143520 0.052484 0.164705 -0.208289 0.192006 5.306148 -3.734197 11.501960 0.565875 -2.536134 7.531897 -0.809094 -1.623996 5.838099 -5.223068 -2.808840 14.069006 0.850660 -3.432649 -17.701313 -22.089006 -2.057857 -7.494957 -50.515770 -11.524740 -5.521890 -23.292805 -43.900520 3.624616 0.296318 -0.244097 0.797204 16.767611 5.999707 -9.231911 48.348701 11.014623 -5.011138 8.688776 8.261131 -0.349238 -0.337626 0.191589 -0.051924 +0.233094 1.552643 0.028268 4.111592 17.674257 -6.881403 -3.913498 -7.288972 -6.164492 -14.497955 4.975121 49.818653 -0.587333 0.066806 -0.206933 0.707021 0.402999 0.615155 -1.893774 2.377265 -27.814182 2.409767 -0.408580 2.047779 -0.431174 0.151502 0.051649 0.186766 -0.222262 0.192969 4.145580 -3.496328 11.304860 0.424542 -2.723857 7.577475 -0.401002 -1.913743 5.976470 -4.913081 -4.037910 14.807783 2.343868 -4.454819 -18.385695 -22.553858 -4.045407 -7.175439 -52.633076 -13.663358 -4.702799 -26.666391 -45.610611 5.192018 0.324264 -0.229451 0.810790 17.999743 9.289962 -8.921168 50.278049 12.624461 -4.646735 8.624006 9.929495 -0.432258 -0.344826 0.185796 -0.038409 +0.227930 1.552100 0.016986 4.493822 20.482740 -6.421607 -4.431934 -7.307833 -7.189582 -12.660108 4.311404 50.303913 -0.582762 0.060059 -0.201322 0.736502 0.447602 0.617016 -4.645497 2.134581 -29.104486 3.654890 -0.372033 4.280870 -0.440022 0.144040 0.054767 0.213628 -0.210173 0.195853 3.239133 -3.146387 10.831362 0.068052 -2.666142 7.790592 -0.441883 -2.004601 6.464919 -4.315325 -5.160226 14.898944 3.344346 -5.289037 -18.472836 -22.831137 -6.664237 -6.995344 -53.339500 -16.099321 -3.346295 -31.606388 -46.503654 7.625729 0.327833 -0.218572 0.795719 18.901545 13.133191 -8.883245 51.624283 15.097320 -3.595460 9.410044 10.908044 -0.404377 -0.352693 0.169015 -0.026174 +0.221537 1.555342 0.004458 4.496091 22.709753 -6.216164 -4.626124 -7.051406 -8.234066 -10.608727 3.632791 50.479397 -0.592794 0.066681 -0.199819 0.755584 0.478782 0.607219 -6.835126 2.310300 -30.303844 4.845688 -0.384654 7.111731 -0.445872 0.146122 0.056126 0.238134 -0.189865 0.193352 2.958538 -2.705926 10.555647 -0.013030 -2.428483 8.196683 -0.412132 -1.842441 7.171907 -4.772450 -5.995138 15.109875 4.325140 -6.467134 -19.196730 -22.196098 -9.665896 -6.501179 -54.681339 -18.796181 -1.929911 -35.664619 -49.075684 10.145767 0.329286 -0.227890 0.792700 18.804504 17.298859 -8.714624 51.821636 17.645992 -2.570530 10.939686 13.409426 -0.257283 -0.364106 0.174324 -0.024961 +0.214375 1.560333 -0.006610 4.388953 25.229528 -6.303065 -4.968287 -6.776238 -8.790914 -8.046519 2.649043 50.264370 -0.620825 0.089464 -0.200700 0.761881 0.493157 0.587970 -9.254323 2.494391 -30.850775 6.880153 -0.524728 10.084287 -0.442769 0.144983 0.056740 0.264186 -0.159252 0.181764 2.615285 -2.370515 10.146715 0.022019 -2.400139 8.804703 -0.219228 -1.864779 8.246807 -5.459122 -6.702700 15.540776 5.175652 -7.626729 -19.747723 -21.068577 -12.517859 -5.891361 -55.731277 -21.532248 -0.432078 -40.251881 -53.597481 13.876031 0.321620 -0.250991 0.794432 18.277132 21.315578 -8.726027 51.008251 20.431128 -1.553502 12.897674 16.670612 0.064321 -0.383831 0.186821 -0.042208 +0.207214 1.568072 -0.015812 3.795110 27.435413 -7.085177 -4.961713 -6.300267 -8.407109 -5.199611 1.480661 49.303040 -0.648547 0.088877 -0.212747 0.788091 0.538566 0.576575 -11.169778 2.999451 -30.760841 9.694053 -0.864509 13.432578 -0.454299 0.155687 0.055076 0.301472 -0.144436 0.170218 3.110669 -2.302642 9.941418 -0.014270 -2.320063 9.602319 -0.633501 -1.807837 9.560841 -5.843490 -7.381454 16.392851 6.797629 -8.557486 -21.156933 -20.214958 -15.906149 -5.384365 -55.917622 -24.649147 1.190591 -43.778782 -58.914532 18.013430 0.332103 -0.269568 0.808841 16.941525 25.085981 -8.888502 50.174759 23.270790 -0.771669 14.531515 21.109221 0.447366 -0.402182 0.203533 -0.049644 +0.200319 1.576621 -0.024001 2.777732 29.538780 -7.823514 -4.448115 -5.747032 -8.073668 -2.505160 0.433191 47.928043 -0.641914 0.066350 -0.202172 0.841373 0.616117 0.589978 -13.172125 3.668555 -30.902479 13.909971 -1.518764 16.762117 -0.471343 0.164712 0.058421 0.349494 -0.137658 0.156724 3.932424 -2.384698 9.243716 0.012733 -2.247405 10.462512 -1.067577 -1.825832 11.188011 -6.011738 -8.375024 16.675428 8.037700 -9.531872 -22.222546 -18.911068 -18.861050 -5.272528 -56.358997 -28.444658 3.424997 -44.977745 -63.592274 21.113293 0.357964 -0.261906 0.793259 14.562156 28.035074 -9.719762 49.200481 26.549614 0.265991 15.455927 25.518578 0.823556 -0.404551 0.186554 -0.036497 +0.194221 1.587089 -0.032717 1.710253 31.497774 -8.516628 -3.840318 -5.346277 -8.012822 -0.299954 -0.397873 46.392822 -0.672334 0.075173 -0.212277 0.864550 0.650575 0.582955 -15.094209 4.347300 -31.262259 18.669193 -2.664842 20.526146 -0.469444 0.159128 0.057306 0.387004 -0.122239 0.144876 4.911663 -2.389993 8.773745 0.135144 -2.136640 11.232418 -1.453451 -1.708559 12.642705 -5.961019 -9.412144 16.473419 9.266899 -10.405655 -23.407852 -17.493361 -21.887951 -5.568738 -56.963165 -32.855019 6.266396 -41.238132 -67.341003 20.685965 0.358680 -0.265110 0.793117 12.068085 29.912214 -10.582129 47.820347 29.429298 0.875161 16.201103 31.620316 1.321605 -0.426427 0.183564 -0.047305 +0.187583 1.598394 -0.039677 0.733870 33.511097 -9.153356 -3.084331 -4.985604 -7.702051 1.610186 -1.105956 44.294090 -0.701760 0.107750 -0.213779 0.861877 0.654081 0.553341 -16.591969 4.855028 -31.064398 23.107437 -4.054433 23.645189 -0.459530 0.139094 0.059155 0.408347 -0.082537 0.142226 5.501267 -2.342492 8.116296 0.326053 -2.138457 11.951130 -1.592406 -1.691216 14.084813 -5.680015 -10.315038 16.221285 10.206091 -11.183959 -23.858860 -15.543792 -24.753969 -6.028838 -57.068516 -37.336067 9.196218 -32.151024 -70.046745 15.756139 0.335588 -0.270035 0.785632 9.700342 31.387445 -11.328193 45.932888 32.372513 1.471487 15.805153 37.733971 1.637959 -0.453894 0.182822 -0.065254 +0.181052 1.610198 -0.046585 -0.169937 35.400925 -9.663845 -2.538609 -4.759207 -7.453774 3.514984 -1.833609 41.955551 -0.707142 0.135180 -0.201232 0.870556 0.666802 0.529003 -17.669367 5.209222 -30.869720 26.962191 -5.698649 26.863974 -0.447113 0.107116 0.069708 0.428832 -0.041499 0.149003 6.245407 -2.487264 7.390812 0.411670 -2.204336 12.628109 -1.923052 -1.790040 15.518140 -5.473561 -10.979053 15.464891 10.703759 -11.930090 -23.739332 -13.374066 -27.076847 -6.589390 -55.996731 -41.723072 11.788804 -19.079777 -72.476227 7.411460 0.314177 -0.249905 0.755919 7.427842 32.449253 -12.272974 44.017368 35.669479 2.383014 13.749253 42.179935 1.301836 -0.475039 0.156267 -0.066811 +0.174225 1.621174 -0.052153 -0.429994 37.429478 -9.535018 -2.518772 -4.729338 -7.216983 4.934760 -2.388943 39.231010 -0.708301 0.151048 -0.192370 0.875117 0.686744 0.502157 -18.544069 5.097215 -30.500792 29.617065 -7.388950 30.038145 -0.436299 0.077574 0.071532 0.452704 -0.007588 0.150338 6.289950 -2.462613 6.344170 0.370640 -2.269462 13.183566 -2.007634 -1.936915 16.980207 -4.944070 -11.884566 14.463154 11.157345 -12.697670 -23.735731 -10.034667 -28.902767 -7.422763 -54.564869 -45.669411 13.694847 -1.036588 -72.294579 -5.575310 0.296647 -0.228568 0.720374 4.418246 33.405659 -12.823284 42.196316 38.273712 2.832731 9.709265 47.540882 -0.230787 -0.487892 0.129683 -0.065812 +0.167535 1.631915 -0.057342 -0.766524 38.922153 -9.221552 -2.264905 -4.517166 -6.918632 5.999410 -2.678671 36.169243 -0.690242 0.170276 -0.167414 0.852778 0.689416 0.432916 -18.749798 5.160038 -30.086773 31.478643 -8.934193 32.906456 -0.400055 0.030926 0.086133 0.467867 0.056473 0.140165 6.812069 -2.283485 4.961699 0.378932 -2.029304 13.650519 -2.150700 -1.810958 18.474911 -4.829890 -12.518760 13.218391 11.477771 -13.902327 -22.622032 -6.377359 -30.391581 -8.104938 -53.222935 -49.543530 15.323508 18.399584 -69.751839 -19.170794 0.265840 -0.195103 0.646876 1.596743 33.932720 -13.299437 39.514057 40.713444 3.202540 4.352972 51.515404 -2.666320 -0.497040 0.091027 -0.065668 +0.162219 1.642211 -0.061930 -0.817226 40.484974 -8.702502 -2.302989 -4.279409 -6.310658 6.788893 -2.818560 32.679237 -0.687663 0.198758 -0.143415 0.851882 0.703400 0.390262 -19.082367 5.061860 -29.382994 33.000816 -10.373069 35.331257 -0.371540 -0.014722 0.101521 0.494755 0.114010 0.134616 6.924529 -2.022293 3.569913 0.515867 -1.854895 14.060697 -1.921576 -1.729836 19.964748 -4.591812 -13.348774 11.752779 11.447014 -15.099760 -21.954708 -2.613687 -31.019751 -9.261097 -52.360462 -53.560795 17.272785 29.927357 -64.910141 -25.544796 0.237261 -0.169460 0.586437 -1.420432 33.781910 -13.922628 36.037041 43.099483 3.385478 -2.334826 54.551388 -6.039674 -0.515655 0.050238 -0.069348 +0.156551 1.651607 -0.066568 -0.932292 41.850872 -8.284892 -2.005469 -4.007881 -5.551103 6.978714 -2.733078 29.034914 -0.707976 0.237623 -0.125828 0.866429 0.720326 0.379021 -18.890686 4.939996 -28.491638 33.571877 -11.709288 38.031689 -0.355075 -0.052512 0.105369 0.531491 0.158752 0.130410 7.370888 -1.884177 2.460661 0.499105 -1.656441 14.480565 -2.089760 -1.582556 21.360121 -3.895012 -14.453313 9.984084 11.453084 -16.089018 -21.944504 0.618517 -31.101831 -10.762492 -50.359234 -58.023094 19.186573 35.760273 -59.815830 -26.961369 0.213829 -0.157674 0.551682 -4.421941 33.097923 -14.526329 32.930218 45.515430 3.559974 -10.676677 57.759983 -10.877616 -0.539267 0.014678 -0.085215 +0.151721 1.659219 -0.071202 -1.228807 42.945683 -7.674042 -1.384421 -3.596232 -5.008263 6.997127 -2.488699 25.135151 -0.744766 0.303388 -0.099993 0.816954 0.676069 0.304685 -18.586819 4.938560 -27.659491 34.164070 -12.909202 40.184898 -0.304439 -0.099671 0.124308 0.547151 0.247971 0.099840 8.399351 -1.856482 1.354432 0.279511 -1.409547 14.653395 -2.761358 -1.334362 22.294418 -3.288990 -14.837470 8.181435 11.494079 -16.975590 -20.952135 3.693878 -31.148304 -11.745128 -47.346420 -61.643314 20.054596 40.707436 -55.649750 -27.901323 0.159934 -0.177911 0.510017 -6.610831 32.223427 -14.741937 30.305374 47.920795 3.772357 -20.391186 58.728012 -16.582783 -0.575876 0.004675 -0.141257 +0.147460 1.665654 -0.075602 -1.498593 43.988770 -6.815135 -0.711396 -3.187897 -4.504516 6.695819 -2.180803 20.696096 -0.768782 0.349091 -0.092746 0.817768 0.699488 0.266654 -17.801920 4.570080 -26.598909 33.292236 -13.723327 42.428619 -0.268520 -0.154498 0.127791 0.593068 0.310591 0.092052 9.363267 -2.038183 -0.176428 -0.023613 -1.320607 14.700050 -3.336374 -1.228303 23.442545 -2.681811 -15.313403 6.131666 10.967842 -17.828402 -20.459042 6.901023 -30.088480 -13.177217 -45.270607 -64.958664 20.804037 42.543510 -49.781395 -26.288889 0.109323 -0.160439 0.441874 -9.692622 30.772814 -15.409515 28.486740 50.483730 4.426569 -29.514660 57.910091 -21.757524 -0.606906 -0.033656 -0.152327 +0.143311 1.671371 -0.078338 -1.018964 44.913437 -5.734782 -0.656269 -2.683207 -3.549790 6.586194 -1.896998 16.325548 -0.788344 0.404743 -0.069504 0.807718 0.690519 0.211853 -17.089457 4.368497 -24.683519 31.823704 -13.856279 44.013763 -0.244250 -0.203064 0.137892 0.617792 0.387344 0.089147 8.927692 -1.869438 -1.513067 -0.241486 -1.261811 14.758851 -3.354580 -1.167326 24.305511 -2.080103 -15.138094 5.291570 11.544012 -18.311682 -19.590296 10.742352 -29.177095 -14.289844 -43.815407 -67.432449 21.324484 43.927773 -44.544197 -24.902868 0.074827 -0.142320 0.407322 -11.811888 29.618423 -15.626767 26.345934 52.538223 4.644286 -35.202942 55.660599 -24.161993 -0.636790 -0.065185 -0.180114 +0.138854 1.675294 -0.080486 -0.482630 45.431965 -4.537291 -0.339754 -2.180312 -2.827226 5.794690 -1.531284 12.804880 -0.764533 0.415231 -0.048522 0.802000 0.703182 0.173800 -15.933917 4.276096 -22.689014 29.678133 -13.277908 44.719940 -0.221824 -0.236136 0.146749 0.630602 0.429216 0.089359 8.744745 -1.738192 -2.640304 -0.559519 -1.083892 14.675805 -3.702135 -0.980965 24.784090 -1.789838 -15.569306 4.680195 11.493908 -19.090755 -18.789513 13.560601 -28.396606 -15.121990 -41.001778 -69.709290 20.738363 43.747368 -39.183022 -22.528307 0.054596 -0.112516 0.347903 -13.853784 29.051785 -15.733978 24.564468 54.460114 4.761767 -39.383476 52.361546 -25.161339 -0.636036 -0.098886 -0.168575 +0.134485 1.676631 -0.082640 0.195717 45.231274 -3.128685 -0.011186 -1.658668 -2.221748 4.826827 -1.168970 9.436467 -0.749783 0.439417 -0.015549 0.787245 0.703784 0.113216 -14.568318 4.369922 -20.656429 26.746553 -11.856483 44.400692 -0.191816 -0.279148 0.165609 0.645942 0.497640 0.078831 8.297199 -1.259358 -3.759178 -0.798297 -0.624896 14.550812 -3.848387 -0.549422 25.172953 -1.183136 -15.715086 3.919689 11.901684 -19.744865 -17.656733 16.391243 -27.028820 -16.111454 -38.907597 -72.513435 21.067381 42.426201 -33.731606 -19.780941 0.029960 -0.082909 0.288493 -14.964015 27.849743 -15.640100 22.269495 56.370136 4.798512 -42.100193 49.376343 -25.172220 -0.647315 -0.137282 -0.177014 +0.130073 1.676374 -0.084541 0.767569 44.928761 -1.782283 0.509134 -1.221781 -1.911390 3.412644 -0.829386 6.636091 -0.758993 0.492438 -0.001979 0.754094 0.659401 0.071364 -12.815981 4.407954 -18.125818 23.272379 -9.826630 42.483952 -0.159064 -0.321423 0.170573 0.637418 0.551604 0.087760 7.943984 -0.852346 -4.734510 -1.020349 -0.285872 14.316947 -4.005085 -0.130775 25.251595 -0.868558 -15.892940 3.365562 11.685101 -20.308231 -16.669403 18.799007 -25.586620 -16.688164 -34.908241 -74.762756 19.751120 41.601349 -29.191996 -17.742386 -0.014654 -0.070588 0.256102 -16.054989 26.912159 -15.420857 19.690828 58.074780 4.447591 -44.031979 46.105930 -24.506008 -0.663059 -0.155037 -0.193317 +0.124205 1.673986 -0.086260 1.967225 43.764427 0.202303 0.504705 -0.859863 -1.929529 1.945452 -0.545212 4.169034 -0.762333 0.543554 0.022784 0.690453 0.590349 0.009558 -11.169040 4.519945 -15.637813 18.981491 -7.193574 39.306675 -0.118138 -0.358126 0.178990 0.616272 0.617879 0.078567 6.847950 -0.120638 -5.636936 -1.336518 0.329786 13.978885 -4.052551 0.560723 25.026461 -0.386074 -15.576569 2.864381 11.446191 -20.448399 -15.114246 20.869890 -24.428535 -17.067520 -29.271109 -76.415794 16.808975 39.941898 -25.100555 -15.637975 -0.064683 -0.073615 0.219950 -16.502871 26.487867 -15.007523 16.682652 59.630512 3.696869 -44.426018 42.656334 -22.918911 -0.672870 -0.161228 -0.226947 +0.117809 1.670723 -0.088805 3.448924 42.885639 2.210522 0.141660 -0.648863 -2.357196 0.520956 -0.344025 2.251959 -0.768953 0.594289 0.045223 0.632013 0.526932 -0.037802 -10.092422 4.117255 -12.452794 14.830821 -4.812202 34.507946 -0.077818 -0.391207 0.184329 0.599858 0.675685 0.068405 5.933909 0.405359 -6.374796 -1.785075 0.850545 13.808910 -4.429502 1.257895 24.924658 -0.013854 -15.575856 1.977893 10.785868 -20.744312 -13.798529 21.957529 -23.667435 -17.448750 -20.105944 -77.514778 10.777072 37.615070 -22.265532 -13.733365 -0.115279 -0.084654 0.182735 -16.886011 26.492393 -14.660309 12.204076 60.558693 1.668747 -44.748600 39.188293 -21.343992 -0.681110 -0.165429 -0.259252 +0.112277 1.666804 -0.090861 4.620787 41.402538 3.698118 -0.286626 -0.442885 -2.379221 -0.296352 -0.241916 0.429926 -0.769058 0.634095 0.057668 0.622495 0.518155 -0.069037 -9.352085 3.693133 -9.311338 11.043532 -2.895259 29.523508 -0.051834 -0.439227 0.185082 0.610616 0.721879 0.081057 4.758600 0.927456 -7.249749 -2.077712 1.348227 13.840073 -4.450324 1.909000 25.318718 0.310471 -15.499961 0.829487 10.410777 -21.069214 -13.001333 23.017033 -22.512407 -17.712187 -14.018231 -77.859108 6.454906 37.030121 -20.466269 -12.947874 -0.153964 -0.050286 0.134281 -17.590157 26.656893 -14.675323 8.037049 61.179928 -0.561792 -45.052948 35.573811 -19.879066 -0.694358 -0.203448 -0.259499 +0.106211 1.664448 -0.093128 5.261193 39.040073 4.449441 -0.352671 -0.188311 -2.051232 -1.078750 -0.167498 -1.218452 -0.777754 0.663959 0.070799 0.616743 0.514688 -0.113247 -8.420516 3.445328 -6.752825 7.082187 -1.279330 25.117249 -0.038604 -0.478872 0.192347 0.624364 0.767513 0.085820 4.282636 1.596659 -7.755801 -2.379991 2.097527 14.099246 -4.830224 2.851779 25.788324 0.202419 -14.896953 0.053566 10.577357 -21.147591 -12.533170 23.910519 -21.962946 -18.070442 -7.380886 -77.556740 1.343654 36.276272 -18.760559 -12.161076 -0.172370 -0.022229 0.111240 -17.678221 26.862728 -14.862659 3.101145 61.723366 -3.145608 -43.651379 33.226028 -18.178875 -0.714337 -0.232760 -0.270911 +0.099505 1.663823 -0.095801 5.455435 37.154781 4.644238 -0.402416 -0.025748 -1.772301 -1.016685 -0.138610 -2.438679 -0.757992 0.662718 0.089419 0.595243 0.508698 -0.146290 -7.426170 3.136102 -4.473663 3.952729 -0.209896 20.902784 -0.025871 -0.481140 0.199171 0.621075 0.794388 0.073606 4.312849 2.315561 -7.894930 -2.497273 2.906760 14.517030 -5.136310 3.777774 26.250202 -0.159372 -14.889859 -0.343930 10.712523 -21.506483 -12.412816 24.332123 -21.721045 -18.506142 -0.129292 -77.292854 -4.122736 34.700958 -17.894260 -11.333456 -0.178325 -0.025789 0.084454 -16.980810 27.381304 -14.754991 -2.094314 61.330296 -6.117772 -42.635696 31.602150 -16.905416 -0.704379 -0.231069 -0.273044 +0.092807 1.663602 -0.098573 5.211547 35.087025 4.684586 -0.184278 -0.044609 -2.079165 -0.858331 -0.142753 -2.841350 -0.777921 0.670625 0.084950 0.605498 0.523687 -0.148342 -6.566237 2.882733 -3.341674 1.942742 0.332822 17.679333 -0.027756 -0.485999 0.198132 0.639198 0.803720 0.068719 5.011559 2.857304 -7.863353 -2.785936 3.625932 14.726908 -5.907342 4.651711 26.532146 -0.373554 -14.466948 -0.621476 10.872719 -21.329311 -12.795491 24.202517 -21.236774 -18.827250 2.790069 -76.905296 -6.039688 33.688625 -18.252241 -11.020083 -0.180736 -0.031376 0.089304 -16.987125 27.242277 -15.192152 -3.880207 61.844578 -7.118716 -41.363770 30.655727 -16.077665 -0.717463 -0.231448 -0.282872 +0.086937 1.663421 -0.100376 4.831928 33.538353 4.941697 0.158729 -0.239598 -3.075771 -0.683784 -0.171888 -2.380670 -0.813354 0.730170 0.081609 0.608570 0.528031 -0.181476 -6.025341 2.779716 -3.324180 1.261428 0.492542 15.758355 -0.013733 -0.534744 0.191867 0.670189 0.856857 0.086009 6.017321 3.364200 -7.929292 -3.029213 4.315345 14.687223 -6.735345 5.502752 26.782696 -0.327290 -14.347259 -1.368294 10.789804 -21.599205 -12.693804 23.901497 -19.977432 -19.416935 2.272611 -78.419380 -5.367332 32.757080 -18.064423 -10.824881 -0.224632 -0.010287 0.064272 -17.001711 26.078747 -15.855872 -3.526985 63.092155 -6.654686 -40.548397 30.509621 -15.823312 -0.753414 -0.257017 -0.296162 +0.081477 1.662569 -0.101236 4.090908 32.946072 5.377330 0.823818 -0.483727 -4.586555 -0.229213 -0.221832 -1.648501 -0.863706 0.782214 0.053037 0.620970 0.541519 -0.194590 -5.338080 2.811177 -4.091404 1.497100 0.430727 14.954982 0.000841 -0.583773 0.183775 0.703402 0.884149 0.111408 7.154171 3.659247 -8.068837 -3.092623 4.718558 14.222916 -7.268971 6.067945 26.617887 -0.193863 -14.446340 -1.762977 10.273693 -21.747290 -12.772013 23.019650 -18.810026 -19.752174 -4.497456 -81.214943 0.289883 32.559399 -17.086882 -10.854053 -0.272812 0.006697 0.048296 -17.606268 24.344473 -16.548855 0.018092 64.941002 -4.002574 -40.092724 30.982365 -16.004272 -0.797053 -0.277354 -0.300430 +0.075631 1.662606 -0.100745 3.460313 32.976471 5.710641 1.651751 -0.598342 -5.862648 -0.220353 -0.229545 -1.193220 -0.924313 0.852111 0.031840 0.608909 0.507222 -0.193184 -4.589757 2.812429 -4.654297 1.586486 0.375017 14.338484 0.012426 -0.597335 0.169291 0.712591 0.912611 0.123434 7.424440 3.845426 -8.311149 -3.011508 4.804329 13.762800 -7.142565 6.292909 26.404932 -0.122025 -14.670962 -1.414737 10.276059 -21.916969 -13.140939 22.433922 -17.528334 -19.910950 -27.151760 -83.391960 20.414181 32.921360 -16.879583 -11.344308 -0.315939 -0.025322 0.070809 -18.030359 22.724833 -16.860800 6.800633 66.340378 0.729718 -40.609013 33.137920 -17.157066 -0.828607 -0.254875 -0.334881 +0.067744 1.663019 -0.100160 2.750137 32.451008 5.964579 2.709828 -0.654018 -7.029812 -0.114215 -0.240247 -0.610304 -0.930584 0.864305 0.032429 0.609857 0.508663 -0.197719 -3.674926 2.945854 -5.614472 1.624561 0.393651 14.123142 0.018196 -0.609623 0.169756 0.719909 0.924489 0.125479 6.925022 4.113745 -8.470967 -2.708726 4.964619 13.365863 -6.311509 6.434574 26.121767 -0.087647 -14.617156 -1.313665 10.179727 -21.897840 -12.920235 21.621241 -16.789473 -19.702494 -55.289963 -83.062332 45.417103 33.694054 -18.238564 -12.221183 -0.328209 -0.018812 0.060631 -17.603447 22.193762 -16.885450 12.234296 67.057144 4.719404 -40.514904 35.660309 -18.112703 -0.837186 -0.264026 -0.337863 +0.060451 1.663239 -0.099180 1.937882 32.343819 5.958369 3.803444 -0.623412 -7.813339 0.243347 -0.258939 -0.337957 -0.931584 0.849311 0.020650 0.625676 0.531819 -0.167987 -2.776719 2.871157 -5.914401 1.981815 0.313143 13.251905 0.004562 -0.600031 0.164373 0.727190 0.900327 0.131984 6.693370 4.130381 -8.602763 -2.492925 4.878021 13.085575 -5.623110 6.248312 25.914974 0.026765 -14.322717 -0.993933 9.866907 -21.264786 -13.101703 20.605280 -16.762232 -19.441797 -69.444542 -81.344215 56.811363 33.558720 -20.169079 -12.845671 -0.327240 -0.026446 0.068682 -16.992315 22.335329 -16.871490 19.327330 67.236977 9.520151 -39.864265 38.640488 -19.115461 -0.836243 -0.259119 -0.327297 +0.052895 1.663245 -0.098062 1.322211 31.782982 6.073307 4.770546 -0.606652 -8.541510 0.440738 -0.270776 0.067088 -0.946148 0.846498 0.018886 0.636753 0.539766 -0.140044 -2.060540 2.844466 -6.400616 2.237840 0.249050 12.528689 -0.009189 -0.584895 0.170410 0.730516 0.888239 0.129532 6.422508 4.134879 -8.697432 -2.410754 4.796368 12.828496 -5.160326 6.120498 25.663195 -0.058329 -14.074247 -0.515942 9.547147 -20.743080 -13.313732 19.289627 -16.371893 -19.119247 -77.490204 -78.407585 61.343708 32.973049 -23.363062 -13.643740 -0.326028 -0.056824 0.093424 -16.234922 22.454899 -16.763935 28.269604 66.825409 15.260168 -39.315926 42.380127 -20.557898 -0.846430 -0.241830 -0.335911 +0.046037 1.662703 -0.096283 0.787367 30.777323 6.156832 5.514717 -0.599568 -8.969502 0.851362 -0.302157 0.421786 -0.949322 0.835268 0.015171 0.670398 0.577169 -0.101702 -1.576798 2.885718 -6.904355 2.616249 0.196066 12.201994 -0.030733 -0.580131 0.166903 0.748952 0.868787 0.138336 6.046391 4.173681 -8.953986 -2.359094 4.779506 12.608792 -4.672663 6.045753 25.626432 -0.169140 -13.511759 -0.112721 9.216455 -20.021311 -13.482525 17.449570 -15.208226 -18.445559 -84.397644 -74.431297 63.724461 32.583523 -28.703791 -15.143194 -0.319589 -0.056320 0.103005 -15.929209 22.354614 -17.222151 39.593220 66.615494 22.832735 -36.562370 45.757362 -20.921675 -0.851164 -0.249906 -0.326012 +0.039986 1.661240 -0.094250 0.268377 29.780293 6.220406 6.298190 -0.564981 -9.349019 0.998647 -0.311890 0.877572 -0.933065 0.800760 0.008394 0.679123 0.579550 -0.065802 -1.058189 2.943848 -7.337451 3.144549 0.100472 12.102241 -0.051450 -0.548698 0.166443 0.728923 0.824585 0.143160 5.764920 4.117283 -9.040600 -2.385677 4.656163 12.352559 -4.369051 5.882736 25.184273 -0.646732 -13.006015 0.784969 9.144421 -19.396803 -13.731958 15.495880 -14.966761 -17.312281 -85.709503 -69.846359 59.936234 31.575283 -34.764702 -16.622219 -0.293988 -0.068191 0.133468 -14.899734 23.063726 -17.113855 49.787735 64.896858 28.465288 -33.056538 49.319580 -20.803890 -0.833715 -0.231214 -0.311077 +0.033978 1.659814 -0.091534 -0.302558 29.064325 6.142828 7.322985 -0.437458 -9.538744 0.848280 -0.305337 1.118544 -0.866625 0.702229 0.007516 0.707805 0.610742 -0.013836 -0.160860 3.001503 -7.586288 3.062507 0.123911 11.990170 -0.100697 -0.482750 0.163399 0.695277 0.734926 0.146518 5.599644 4.083576 -8.875501 -2.442043 4.600804 12.146664 -4.164323 5.635550 24.392145 -1.014126 -12.510187 2.059135 9.851705 -18.615873 -14.412713 13.283307 -15.468011 -16.367182 -83.872742 -65.445190 53.785103 26.602276 -40.988811 -16.044506 -0.213428 -0.055911 0.174528 -12.405194 24.297611 -16.526840 57.423985 61.840282 31.015785 -26.612154 53.179672 -18.892153 -0.779497 -0.214809 -0.261756 +0.028820 1.658024 -0.088926 -0.746657 28.167524 6.127325 8.064070 -0.379529 -9.955431 0.907637 -0.290271 1.757425 -0.863072 0.682274 -0.021868 0.666808 0.526805 0.029060 0.478978 3.230084 -8.036625 3.128987 0.096436 12.437164 -0.114635 -0.420108 0.138320 0.623208 0.658848 0.151542 5.547206 4.232161 -8.374828 -2.461287 4.608712 11.943456 -4.066922 5.601864 23.144876 -1.775282 -12.153822 3.146666 9.957205 -18.016468 -14.850808 11.300803 -17.004930 -15.459740 -80.482262 -60.903999 46.393951 19.054178 -46.859386 -13.795204 -0.182508 -0.096380 0.253326 -9.225326 26.157406 -15.612331 60.147099 57.151772 28.553387 -15.392452 56.765541 -13.648410 -0.738761 -0.149773 -0.266975 +0.024259 1.656469 -0.085762 -1.114040 27.719856 6.093285 8.523989 -0.430282 -10.678864 1.398656 -0.310160 3.087777 -0.846434 0.638121 -0.033779 0.648257 0.451581 0.105528 1.106315 3.339919 -8.165560 3.134204 0.068032 12.561898 -0.143586 -0.330029 0.129613 0.543585 0.565688 0.144133 5.384788 4.208803 -7.622181 -2.479476 4.468927 11.626424 -3.963840 5.386047 21.362310 -2.538534 -11.799301 4.994083 10.342610 -17.223997 -15.281015 9.602264 -18.411757 -14.489587 -77.448097 -55.665230 39.080826 6.912807 -52.168674 -8.421310 -0.118701 -0.149964 0.355887 -6.191836 27.530190 -14.616426 62.100391 51.022358 24.285908 1.487765 58.231964 -4.515537 -0.689516 -0.079265 -0.272603 +0.018929 1.655272 -0.083074 -1.320157 27.438904 6.024343 8.804043 -0.520952 -11.724448 2.009363 -0.351595 5.107023 -0.821493 0.577180 -0.043184 0.633540 0.417549 0.156606 1.545581 3.443554 -8.345448 3.594228 -0.016706 12.732988 -0.175229 -0.243758 0.126685 0.486679 0.488302 0.130215 5.240254 3.885373 -6.604835 -2.608207 4.173019 11.420531 -4.110647 5.116705 19.652153 -3.248586 -11.309921 6.543055 10.628420 -16.363821 -15.987360 6.680974 -19.585842 -13.844151 -74.320900 -50.182953 31.355860 -7.711515 -52.438782 -0.885073 -0.059364 -0.209896 0.435250 -3.225844 29.060011 -13.800301 62.489117 45.105511 18.976837 16.208967 54.689651 3.029758 -0.642904 -0.006721 -0.268939 +0.015033 1.652419 -0.080629 -1.872544 27.256689 5.607562 9.173531 -0.578054 -12.846951 2.860530 -0.454417 7.441465 -0.788694 0.480980 -0.074902 0.689558 0.468411 0.255373 2.273404 3.650125 -8.432840 3.960526 -0.066124 13.463724 -0.241096 -0.160799 0.110128 0.466335 0.363913 0.143251 5.612366 3.288752 -5.623464 -2.656493 3.701338 11.200472 -4.344469 4.696045 18.251329 -3.845389 -10.786163 8.410403 10.468436 -15.161457 -17.444098 3.094943 -19.395794 -13.516047 -73.244728 -45.120861 25.429760 -18.212690 -46.996372 3.674936 0.025590 -0.224607 0.512006 -1.161697 29.294413 -13.281642 64.009697 39.762363 14.683785 22.268076 46.992287 4.549775 -0.596414 0.031837 -0.218076 +0.011640 1.648982 -0.077192 -2.245581 27.119728 5.125892 9.064021 -0.807862 -14.144335 4.062254 -0.661653 10.636581 -0.745959 0.377733 -0.093884 0.720589 0.512561 0.308761 2.603768 3.693428 -8.156476 4.766854 -0.200310 13.924015 -0.292988 -0.075202 0.109002 0.443478 0.266891 0.134219 6.102139 2.769947 -4.489749 -2.817702 3.419485 10.893922 -4.828446 4.471055 16.777538 -4.311166 -10.366948 10.302101 10.827532 -14.326761 -18.647331 -1.315633 -19.761639 -12.828084 -70.823479 -40.584328 19.598974 -21.849625 -39.580322 4.089746 0.109032 -0.251681 0.572904 1.364328 30.279877 -12.183983 64.271088 34.851540 10.480817 21.889658 37.390999 2.871182 -0.549648 0.082061 -0.177757 +0.006436 1.646482 -0.074548 -2.396243 26.319700 4.583327 8.914662 -1.189471 -15.442275 4.765430 -0.898953 14.346115 -0.723408 0.294975 -0.135524 0.743085 0.528034 0.373324 2.980075 3.828263 -8.064270 5.169292 -0.293313 14.740459 -0.342242 0.005466 0.091262 0.408499 0.155941 0.140283 5.703667 2.319776 -2.885660 -2.926263 3.118362 10.440119 -4.921028 4.242048 15.125410 -4.530672 -9.600414 12.492696 11.073767 -13.146041 -19.750673 -6.323945 -20.328955 -11.684490 -67.008247 -35.957207 13.765593 -21.655010 -32.839359 2.890163 0.180359 -0.271922 0.651909 5.002633 31.745455 -10.233080 63.596897 30.567308 6.877375 19.962444 29.748713 1.476035 -0.507224 0.136706 -0.141464 +0.000344 1.642982 -0.073020 -2.904719 24.550039 4.002471 9.285649 -1.613476 -17.397533 4.939266 -1.143864 19.367868 -0.697447 0.217400 -0.168870 0.756723 0.526457 0.423855 3.587287 4.304657 -8.709493 5.652985 -0.400704 16.713232 -0.386285 0.079799 0.077989 0.364376 0.053933 0.145328 5.431520 1.962162 -0.648394 -2.911253 2.992637 9.621492 -4.957923 4.159826 12.917857 -5.287396 -8.375392 14.502936 11.358890 -12.071952 -20.585999 -11.452865 -19.708029 -10.074731 -63.529682 -30.909336 8.358694 -18.492363 -28.223272 1.091566 0.255661 -0.283423 0.731517 10.075599 31.886204 -7.699796 62.630482 26.192200 3.791089 17.663208 23.004074 0.625034 -0.463677 0.185246 -0.110898 +-0.007274 1.638968 -0.072235 -3.008276 22.035337 3.677706 9.522751 -1.967760 -19.711714 4.694295 -1.246534 24.977421 -0.670678 0.151376 -0.195416 0.757548 0.525458 0.467222 3.970089 5.080105 -10.031467 5.631836 -0.377111 19.647587 -0.415510 0.142913 0.068845 0.326898 -0.026727 0.145717 3.924162 2.163312 1.951574 -2.670274 3.175872 8.709508 -4.227693 4.268992 10.655452 -5.574524 -7.478019 15.723668 11.241080 -10.879519 -21.340027 -15.470458 -17.810436 -9.378189 -60.964703 -27.026674 4.770772 -14.935219 -24.731766 -0.247103 0.302369 -0.302749 0.782621 14.839340 30.607428 -5.876314 60.586037 22.582407 1.804074 15.459748 16.683353 0.302390 -0.425095 0.231847 -0.085000 +-0.012767 1.632059 -0.071147 -3.188107 20.125826 3.490277 9.567676 -2.516288 -23.157537 4.592924 -1.440678 32.002728 -0.626222 0.103103 -0.206375 0.751699 0.518213 0.477906 4.004121 5.862217 -11.714152 6.379379 -0.572347 23.018656 -0.430698 0.163487 0.059324 0.290569 -0.077932 0.162258 2.812906 2.184469 4.341192 -2.370742 3.204790 7.776482 -3.547487 4.181605 8.470813 -5.922029 -6.688453 15.734831 10.983440 -10.183174 -21.245098 -17.941589 -14.558348 -9.286791 -59.890591 -23.472286 2.041696 -11.116385 -21.778189 -1.341169 0.333187 -0.271548 0.793085 17.773335 27.986938 -5.341005 58.811947 19.628033 0.867582 13.436264 9.585812 0.273600 -0.388544 0.233265 -0.048803 +-0.017405 1.623264 -0.069625 -3.763556 18.597235 3.088673 9.740908 -3.066433 -27.092962 4.828552 -1.805309 39.742638 -0.596579 0.085221 -0.193604 0.736575 0.486607 0.477354 4.233627 6.701496 -13.441511 7.622811 -0.982310 26.802177 -0.432961 0.173024 0.066673 0.254320 -0.093286 0.166765 2.684459 1.835391 6.730634 -2.192938 3.169391 6.868375 -3.495774 4.099107 6.328510 -6.301057 -5.814495 15.146177 10.791109 -9.730202 -20.768696 -19.510109 -11.365467 -9.245909 -58.665051 -19.894918 -0.162634 -8.531816 -19.381807 -1.890725 0.352819 -0.256297 0.803771 18.986029 24.900455 -5.439965 57.112122 17.176193 0.052519 11.351021 3.933233 0.299241 -0.367915 0.231857 -0.041567 +-0.022472 1.616148 -0.066093 -4.606283 16.783684 2.038433 10.257225 -3.237386 -30.051424 4.860679 -2.070026 46.780174 -0.610522 0.061044 -0.204255 0.718773 0.467486 0.504439 5.313603 7.236397 -13.443831 7.945229 -1.112726 29.058994 -0.441672 0.214755 0.068919 0.236123 -0.130152 0.144288 2.724490 1.566288 9.486620 -2.050978 3.328049 6.083529 -3.622650 4.284473 4.461007 -6.048547 -5.272292 15.347760 10.143270 -8.627272 -21.611727 -21.036156 -8.525801 -9.344939 -56.316929 -16.534935 -1.850828 -6.523263 -16.867512 -2.104004 0.366587 -0.310249 0.846832 18.836288 21.985016 -5.754991 55.359642 15.102925 -0.912700 8.728246 -0.011556 0.353473 -0.360199 0.279839 -0.061794 +-0.028604 1.612718 -0.061543 -5.205863 14.780851 0.184086 10.481403 -3.321495 -31.716125 4.762765 -2.255331 53.005367 -0.608191 0.027894 -0.229788 0.735862 0.478802 0.550138 6.409328 7.461229 -11.889744 8.249804 -1.161624 30.333080 -0.477710 0.252686 0.055904 0.219036 -0.188509 0.163519 2.189550 1.555688 13.131711 -1.949141 3.727525 5.295633 -3.683510 4.680171 2.536283 -5.645040 -5.248861 16.697853 10.199049 -7.850960 -22.905785 -22.588839 -6.642550 -9.222620 -52.489914 -13.294887 -3.059737 -4.999961 -14.308742 -2.081709 0.393287 -0.323604 0.898454 19.141649 19.729973 -5.567057 51.953823 12.876890 -2.060239 6.453767 -2.555665 0.451266 -0.346359 0.311769 -0.041931 +-0.033465 1.611543 -0.057313 -5.288341 12.923439 -2.078186 9.747585 -3.666156 -32.410072 4.921432 -2.548815 58.253490 -0.615517 -0.012988 -0.252891 0.765817 0.502750 0.614105 6.882721 7.336810 -9.424691 8.648570 -1.214429 30.933720 -0.517838 0.305340 0.039539 0.217254 -0.255142 0.161152 1.377738 1.673654 16.938850 -1.885749 4.143285 4.763104 -3.648863 5.081563 0.997109 -5.403621 -5.038651 18.570427 10.438336 -6.968575 -24.290100 -23.327129 -5.456102 -8.691787 -49.202919 -10.225882 -3.913328 -3.029912 -12.153958 -2.069226 0.436552 -0.352176 0.959725 18.800640 18.027386 -5.097826 47.701511 10.585001 -3.161278 4.930471 -3.219490 0.474945 -0.329705 0.346126 -0.035995 +-0.037001 1.610900 -0.053046 -5.459035 11.417397 -4.370905 8.919687 -3.990988 -32.892670 4.719621 -2.631299 62.414093 -0.621527 -0.032382 -0.253748 0.772318 0.510506 0.637159 7.178439 7.141113 -6.887559 9.413719 -1.396781 31.385492 -0.533739 0.338407 0.046544 0.215893 -0.274104 0.146453 1.183635 1.560423 20.112841 -1.946585 4.516106 4.633256 -3.969219 5.446738 0.062529 -5.270811 -4.611331 19.771185 10.590975 -6.358570 -24.764013 -23.337696 -4.727475 -7.933431 -46.059875 -7.455133 -4.352599 -1.121212 -10.099092 -1.953547 0.454304 -0.390862 0.992206 17.932812 16.644169 -4.852449 43.475632 8.879509 -3.809905 3.719316 -3.919387 0.493247 -0.327533 0.376892 -0.046392 +-0.042302 1.610100 -0.049081 -5.391903 9.911004 -6.324331 8.141214 -4.015886 -33.465736 3.902835 -2.138607 65.653336 -0.618434 -0.059633 -0.262143 0.784273 0.531671 0.657152 7.362815 7.137530 -4.857063 10.020396 -1.511466 32.175289 -0.546387 0.353239 0.049146 0.217707 -0.301873 0.146027 0.480422 1.964811 22.227631 -1.941046 4.897775 5.094965 -3.796236 5.802814 0.099601 -5.052799 -4.603489 19.660629 10.209729 -5.799301 -25.733595 -22.133482 -3.793023 -7.513168 -44.155209 -5.861660 -4.444392 1.045169 -7.803169 -1.774016 0.467210 -0.396980 1.004365 15.947800 15.561639 -4.604399 39.730682 7.417494 -4.274111 2.618038 -3.673816 0.461445 -0.324058 0.385768 -0.036964 +-0.046499 1.609824 -0.044563 -4.897097 8.044132 -7.759527 7.129580 -3.701488 -33.950520 2.434736 -0.905148 68.046700 -0.567278 -0.109690 -0.251736 0.791232 0.558504 0.656296 6.894688 7.341344 -3.339985 10.693041 -1.602174 33.169521 -0.550341 0.356923 0.053911 0.209904 -0.321924 0.146254 -0.180039 2.533565 23.303581 -2.283835 5.312343 5.754400 -4.028460 6.098253 0.544943 -4.827488 -4.434423 18.788912 10.298202 -5.464774 -25.856817 -20.136738 -2.228923 -6.826283 -42.542194 -4.035356 -4.797617 2.826261 -7.419703 -1.665038 0.488975 -0.357993 0.975026 13.555342 14.611179 -4.277354 36.701172 6.347998 -4.459073 1.805836 -3.291048 0.420920 -0.296834 0.362327 -0.003108 +-0.051368 1.609805 -0.039089 -4.729520 5.262616 -9.072851 7.009119 -2.416961 -33.923206 0.479808 0.948071 69.028908 -0.538666 -0.111515 -0.231386 0.758328 0.530239 0.627724 7.340661 7.830291 -1.892002 10.257276 -1.192133 34.147629 -0.540927 0.352997 0.060729 0.184976 -0.303629 0.147970 -0.553872 3.476938 23.967199 -2.540746 6.006273 6.481787 -4.276760 6.742264 1.088838 -4.740468 -4.220420 17.433125 10.389961 -5.287320 -25.893085 -17.643950 -0.260914 -6.279697 -41.360966 -2.508306 -5.087936 4.177069 -7.586514 -1.621331 0.480496 -0.350431 0.957908 10.696718 13.640912 -3.638309 33.917938 5.195716 -4.513232 1.852453 -2.401143 0.371252 -0.282587 0.362839 -0.002393 +-0.056731 1.609689 -0.031798 -4.488407 2.199222 -9.961704 6.761600 -0.874082 -33.753017 -1.260345 2.780887 68.746666 -0.499820 -0.121450 -0.192676 0.722658 0.497435 0.586983 7.735133 8.368250 -0.669134 9.878084 -0.718180 34.887722 -0.511474 0.341385 0.082580 0.163110 -0.270551 0.124350 -1.171180 4.802898 23.820547 -2.737865 6.803915 7.112964 -4.354832 7.428541 1.673593 -4.726437 -3.751820 15.659914 10.995532 -5.321371 -24.884024 -14.488888 2.454476 -5.832412 -40.615459 -1.178024 -5.458930 5.070867 -8.539602 -1.633265 0.481976 -0.333029 0.920877 8.172437 12.075585 -3.089619 31.262337 4.172236 -4.510634 1.568522 -1.391018 0.315117 -0.265113 0.341937 -0.013063 +-0.060454 1.611549 -0.024798 -4.345602 0.264955 -11.284180 6.274473 -0.036605 -33.198147 -3.752834 4.673784 67.294670 -0.480361 -0.101782 -0.162420 0.681199 0.447092 0.548282 7.943894 8.597098 1.079643 9.849933 -0.493284 35.296005 -0.489628 0.329359 0.096662 0.134069 -0.230963 0.121538 -1.291891 5.575139 24.090136 -2.811716 7.291533 7.981347 -4.524038 7.883126 2.367414 -4.924322 -3.425659 14.103881 11.398785 -5.455873 -24.535128 -12.019752 4.652412 -5.502891 -39.678032 0.003667 -5.805753 7.218094 -9.860481 -1.791672 0.465212 -0.330656 0.903789 5.731482 10.316743 -2.458726 28.315857 3.008001 -4.513628 1.214985 0.744363 0.264369 -0.259341 0.340508 -0.027417 +-0.063755 1.614694 -0.017752 -4.304479 -0.941565 -12.486661 5.513461 0.377790 -32.600277 -5.867639 5.965476 64.767662 -0.458755 -0.070563 -0.131322 0.624120 0.374667 0.509615 8.318394 8.705842 2.775874 9.894506 -0.329877 35.559410 -0.452123 0.309094 0.104436 0.097279 -0.189909 0.114958 -1.222909 6.178157 24.121780 -2.744253 7.680165 8.791437 -4.580501 8.260159 3.067840 -5.085841 -3.527663 12.588505 11.146073 -5.948100 -23.310976 -10.716431 5.865695 -5.068224 -37.476646 1.250844 -5.898730 9.290425 -11.227266 -1.957080 0.436431 -0.325781 0.868926 4.466258 8.685677 -1.626946 24.942867 1.430896 -4.528524 -0.582997 2.888362 0.218945 -0.247001 0.331940 -0.044248 +-0.066834 1.618305 -0.009935 -4.271409 -1.728187 -13.761124 4.440903 0.464509 -31.423830 -7.689936 6.672837 60.742199 -0.495195 -0.005116 -0.120670 0.554363 0.285538 0.458506 8.833310 8.657389 4.785453 10.033473 -0.234974 35.574581 -0.406920 0.301080 0.104227 0.077810 -0.130853 0.086522 -0.575349 6.261177 23.886868 -2.979573 7.890209 9.879624 -5.202965 8.540730 4.265458 -5.753566 -3.037740 11.241445 11.695488 -6.384079 -23.090385 -9.103849 6.938199 -4.883404 -35.290504 2.090719 -5.796532 11.265144 -12.689768 -2.240234 0.395483 -0.366637 0.867585 3.262946 7.174008 -1.315178 21.187616 1.068536 -4.075763 -0.351786 2.925920 0.261723 -0.258810 0.362569 -0.104326 +-0.070439 1.620988 -0.000493 -4.160469 -1.791052 -14.417738 2.994115 0.122842 -30.840187 -8.887682 6.811105 56.824108 -0.496656 0.027183 -0.106951 0.541792 0.265790 0.420645 8.846130 8.662286 5.966333 10.838997 -0.455921 35.720875 -0.384959 0.265421 0.106791 0.080409 -0.088521 0.089626 -0.084268 6.365775 22.389635 -3.164983 8.041585 10.889608 -5.576904 8.716266 5.974546 -6.069462 -3.125971 10.091981 12.230101 -7.198275 -22.276144 -7.419556 7.690780 -4.718075 -32.664898 2.460795 -5.464011 12.799684 -13.810371 -2.472816 0.376884 -0.336484 0.838519 2.351725 5.616473 -1.170618 17.296295 0.982234 -3.428511 0.276717 1.454743 0.286641 -0.269410 0.332852 -0.112497 +-0.074229 1.623649 0.009182 -4.123700 -2.242906 -15.092424 1.826603 0.074590 -29.423367 -9.619883 6.583418 51.775143 -0.483441 0.033626 -0.083505 0.533490 0.261007 0.391314 8.879706 8.889065 6.860559 11.753366 -0.647050 36.130367 -0.370328 0.257235 0.120622 0.081716 -0.052200 0.076185 0.452950 6.533315 21.246351 -3.406180 8.319160 11.633908 -6.080700 8.961723 7.215721 -6.468230 -2.835513 9.475590 13.120923 -7.689601 -21.768579 -5.713641 8.120588 -4.185177 -30.186108 3.302296 -5.242072 14.473454 -14.910348 -2.715931 0.374842 -0.330612 0.816061 1.718016 4.551305 -0.803679 13.974302 0.513172 -2.942636 0.756237 -0.179769 0.285791 -0.269165 0.322657 -0.119974 +-0.078956 1.624931 0.020909 -4.333530 -2.742626 -15.129280 1.447024 0.330546 -28.100103 -11.089450 6.488171 45.802528 -0.479104 0.038896 -0.068683 0.524312 0.257081 0.363153 9.413212 9.269198 6.943058 12.501180 -0.769285 36.864906 -0.352879 0.242712 0.130685 0.088373 -0.023924 0.060189 1.294305 6.604326 19.510118 -3.770504 8.642481 11.895184 -6.832510 9.248810 8.184788 -6.554145 -2.706801 9.125379 13.703918 -8.081475 -20.992449 -3.931792 8.749782 -3.796303 -27.135714 3.872879 -4.786327 15.746517 -15.616330 -2.856759 0.371702 -0.322755 0.793702 1.016898 3.078273 -0.572713 12.038421 -0.203411 -2.654481 0.782950 -0.493135 0.264350 -0.272291 0.307191 -0.131190 +-0.083256 1.626013 0.032690 -4.537520 -3.553150 -15.281181 1.292840 0.744865 -25.927687 -12.554935 6.178078 38.921799 -0.487318 0.079555 -0.055947 0.468658 0.195079 0.311466 9.913964 9.700968 7.122727 12.962446 -0.762768 37.477596 -0.318319 0.231444 0.139498 0.066270 0.029360 0.043972 2.342352 6.794458 17.749067 -4.053502 9.034330 12.074540 -7.597500 9.693402 8.992167 -6.849308 -2.476460 9.744621 14.074791 -8.685578 -19.323400 -2.267720 8.541321 -3.049881 -24.066637 4.820086 -4.326739 16.908501 -15.207360 -2.838797 0.335593 -0.351225 0.777400 0.295125 2.417596 0.292638 9.725731 -1.509158 -2.288901 1.440996 -0.498258 0.256831 -0.278899 0.327252 -0.161716 +-0.087099 1.625439 0.044543 -4.879022 -3.550818 -15.363842 0.729406 0.667539 -23.566408 -13.148077 5.263333 31.820438 -0.498152 0.114442 -0.056705 0.451587 0.158480 0.297821 10.746673 10.023183 7.140649 13.338786 -0.776102 38.205318 -0.304517 0.210080 0.134912 0.055933 0.049590 0.052829 3.071229 6.932812 15.987280 -4.073936 9.171741 12.167547 -7.862047 9.902498 9.749548 -6.619665 -2.501984 10.385706 14.162013 -8.986056 -17.884083 -1.087291 8.534575 -2.592966 -21.284298 5.593383 -3.912184 18.667006 -15.473011 -3.024328 0.314754 -0.341191 0.773489 -0.518731 1.754865 0.949679 7.635855 -2.551775 -1.919943 2.011223 -0.354104 0.242023 -0.287486 0.316954 -0.173439 +-0.090904 1.622851 0.056495 -5.405794 -3.362160 -14.824477 0.163126 0.396351 -21.957710 -12.847582 4.088204 25.156433 -0.512493 0.122933 -0.067894 0.459526 0.174108 0.284005 11.073026 10.466381 6.261765 14.638362 -1.185547 39.084148 -0.298691 0.192396 0.125199 0.076768 0.058601 0.050769 4.082524 7.049643 13.160181 -4.111020 9.359155 12.337749 -8.149163 10.249475 11.264407 -6.492524 -3.143072 10.836895 14.594754 -9.670050 -17.719236 -0.660843 8.277614 -2.550275 -17.510607 5.862931 -3.222911 20.243835 -16.140551 -3.287871 0.308926 -0.322903 0.758851 -0.527988 0.741014 1.023506 4.499062 -2.922536 -1.327293 2.958824 -1.229639 0.152621 -0.298473 0.299991 -0.173350 +-0.094819 1.619612 0.067493 -5.928102 -2.501269 -14.513174 -0.667793 -0.155260 -20.689739 -11.678638 2.950583 19.980234 -0.546611 0.152325 -0.074074 0.464723 0.172147 0.289092 11.398046 10.681211 5.581599 16.150942 -1.806721 39.871658 -0.294526 0.177528 0.119519 0.095148 0.072382 0.047761 4.497272 6.969127 11.071962 -4.101716 9.174507 12.408237 -8.161904 10.204678 12.322958 -5.981243 -3.629343 11.007959 14.470870 -9.804289 -17.583473 -0.087978 8.411112 -2.557572 -14.237834 6.203336 -2.560209 21.779766 -17.071503 -3.602466 0.293362 -0.329949 0.763684 -1.037800 -0.035908 0.837356 2.260914 -2.695381 -0.929959 3.706935 -2.154623 0.054548 -0.319326 0.294437 -0.194493 +-0.098648 1.615449 0.078939 -6.429725 -0.689891 -14.590741 -1.791793 -0.927324 -19.238655 -10.153143 1.988053 15.987058 -0.560850 0.163427 -0.081149 0.467508 0.173826 0.280844 11.678406 10.444448 5.446476 17.918608 -2.690297 40.274136 -0.285932 0.177088 0.120247 0.106621 0.082785 0.039348 4.902253 6.458735 9.532441 -4.223984 8.674844 12.528913 -8.378658 9.819111 13.155441 -6.139990 -3.543532 11.555869 15.155403 -10.102446 -17.464794 1.106026 8.140964 -2.268770 -11.319903 6.410719 -1.963722 22.542982 -16.883654 -3.589069 0.289758 -0.333608 0.763419 -1.278386 -0.559549 0.782265 0.024249 -2.711612 -0.594961 3.936903 -2.636563 0.006567 -0.328585 0.297146 -0.203621 +-0.102360 1.609267 0.091844 -7.071791 1.453924 -14.736541 -2.764009 -1.457778 -17.713989 -9.014901 1.390483 13.116459 -0.590805 0.172143 -0.094154 0.493037 0.193191 0.307161 12.320220 9.984034 5.581549 19.335611 -3.506281 40.569923 -0.296159 0.176414 0.114903 0.129018 0.071098 0.039683 4.689802 6.005881 7.902266 -4.081151 7.967450 12.642797 -7.943502 9.226802 14.069006 -5.914043 -3.457068 11.850121 14.906630 -9.697120 -17.907877 2.018377 7.953105 -1.862757 -8.093374 7.126615 -1.215654 21.884457 -16.812366 -3.389329 0.293359 -0.338993 0.783288 -1.602516 -1.213488 0.670260 -1.894455 -2.772046 -0.266233 4.040524 -2.370249 -0.003042 -0.344508 0.294356 -0.213830 +-0.105765 1.601894 0.102984 -7.475506 2.554207 -15.058746 -3.038265 -1.506967 -16.541637 -8.988110 1.246997 11.744662 -0.566054 0.077389 -0.095852 0.569936 0.315127 0.363072 12.580375 9.777960 5.806503 20.950594 -4.317551 41.111622 -0.330561 0.204935 0.124383 0.181698 0.011658 0.012631 4.339998 5.832718 6.643101 -3.928652 7.675804 12.793781 -7.478076 8.866470 14.945797 -5.388284 -3.582959 12.486918 14.711348 -8.928375 -18.849380 2.608743 7.828300 -1.661123 -5.340085 7.505740 -0.701340 22.242306 -16.825874 -3.263389 0.355096 -0.331090 0.777423 -2.128025 -1.689717 0.631834 -3.311277 -2.893536 0.072751 4.037404 -1.962477 -0.025643 -0.330064 0.270560 -0.181401 +-0.110325 1.594462 0.111935 -7.607469 3.634754 -15.747669 -3.134311 -1.553056 -15.765891 -9.566685 1.375394 12.152218 -0.535405 0.030291 -0.098619 0.592533 0.347728 0.405280 12.620081 9.516385 6.353779 22.621572 -5.248260 41.567814 -0.351778 0.220795 0.125732 0.177200 -0.034986 0.021091 3.374327 5.782463 6.562540 -3.768897 7.341855 12.736885 -6.838039 8.423208 14.859060 -4.586175 -3.785986 13.274812 13.829673 -8.101556 -18.517960 3.129670 6.874203 -0.997113 -2.948442 8.548265 -0.354932 23.053068 -16.098471 -3.058595 0.376533 -0.325137 0.779378 -2.915638 -1.166665 1.384980 -3.977428 -3.900332 0.220550 4.057785 -1.815060 -0.014403 -0.309928 0.263900 -0.151795 +-0.114779 1.586340 0.120219 -7.294706 3.866702 -16.411154 -2.865041 -1.395903 -15.400959 -10.996572 1.788512 13.340425 -0.535774 0.012436 -0.110394 0.592584 0.359519 0.411562 12.396415 9.513542 6.994771 23.720787 -5.925977 42.378113 -0.360968 0.227914 0.122886 0.177864 -0.053487 0.022422 2.369140 6.021291 6.628178 -3.811535 7.327988 12.753875 -6.479008 8.357909 14.825266 -3.926337 -3.957463 13.469325 13.676326 -7.555861 -18.777166 3.649189 6.354259 -0.838647 -0.453328 8.693585 0.091548 23.335814 -15.458507 -2.870138 0.377976 -0.330938 0.787290 -3.221347 -0.906817 1.711321 -4.653479 -4.566107 0.260133 3.746727 -2.333239 -0.028880 -0.309737 0.272668 -0.146323 +-0.117546 1.578749 0.125662 -6.659654 3.815828 -17.352358 -2.966582 -1.490204 -15.250084 -12.057277 2.244631 15.386659 -0.532942 0.010417 -0.119503 0.575033 0.339235 0.401948 11.586409 9.632736 7.758195 24.762545 -6.661480 43.461388 -0.357823 0.244944 0.119760 0.160645 -0.057218 0.021373 1.668211 6.086178 7.625755 -4.124602 7.338911 12.900241 -6.647751 8.325468 14.473283 -4.114501 -3.687254 13.286473 14.529540 -7.468236 -19.317369 4.519283 5.972566 -0.655293 0.756444 8.910223 0.194656 24.363049 -15.196894 -2.902202 0.377059 -0.338005 0.798529 -3.229116 -0.433697 2.063303 -5.193028 -5.077242 0.235147 3.725788 -2.920979 -0.041102 -0.303371 0.296200 -0.146385 +-0.120041 1.572380 0.129362 -6.305942 3.615783 -18.167765 -2.459479 -1.337810 -15.212354 -13.498231 2.791792 17.171534 -0.489782 -0.050843 -0.094904 0.603037 0.385974 0.406871 11.293916 9.692673 8.308476 25.431528 -7.210978 44.615311 -0.369310 0.265380 0.138930 0.170041 -0.069312 -0.002897 1.127866 5.955515 8.764842 -4.382669 7.334832 12.957771 -6.816120 8.136098 13.948115 -4.419566 -3.153421 13.009773 15.650078 -7.373028 -19.349434 5.438451 5.678382 -0.388690 0.913781 9.065556 0.015867 25.505732 -14.885599 -2.884380 0.430137 -0.323295 0.791334 -3.014028 0.153495 2.275024 -5.376196 -5.154175 0.194067 3.504311 -3.401726 -0.070221 -0.277609 0.279147 -0.132339 +-0.121409 1.566785 0.132315 -6.229176 3.445084 -18.446049 -1.536514 -1.159212 -15.634907 -15.038079 3.294131 18.541788 -0.463389 -0.059730 -0.076676 0.604382 0.388259 0.389530 11.291673 9.667732 8.384093 25.887857 -7.714139 45.613132 -0.368481 0.256638 0.150165 0.161794 -0.054369 0.002377 1.364210 5.486217 9.669513 -4.779380 7.198331 12.780397 -7.464574 7.914199 13.271833 -4.824913 -2.566663 12.457442 16.054541 -7.431819 -18.840149 5.961504 5.381151 -0.254147 1.152591 8.954454 -0.044735 25.942503 -14.216311 -2.751684 0.439331 -0.300730 0.778080 -2.842363 0.548663 2.284291 -5.187572 -4.820549 0.114477 3.618735 -3.787461 -0.104767 -0.269047 0.262371 -0.121411 +-0.121633 1.563252 0.133136 -6.207879 2.716420 -18.530725 -0.798228 -0.952371 -15.733153 -15.976245 3.521087 18.726164 -0.451276 -0.060329 -0.062844 0.566421 0.359079 0.338161 11.524342 9.766999 8.315435 25.639431 -7.772152 46.547638 -0.343655 0.253816 0.164740 0.146837 -0.021867 -0.019739 1.977451 4.988690 10.728998 -5.274837 7.147072 12.504950 -8.386013 7.781594 12.364853 -5.290700 -1.732056 11.745614 16.866001 -7.538753 -18.161772 6.321446 5.139113 -0.095538 0.651253 9.072498 -0.247198 26.910023 -14.317163 -2.854932 0.433777 -0.305133 0.760922 -2.344515 0.992614 2.391790 -4.722337 -4.535479 0.062922 3.664660 -3.335208 -0.064310 -0.264414 0.270255 -0.136835 +-0.121898 1.562045 0.132095 -6.296937 2.237329 -18.538651 -0.196385 -0.842635 -15.620030 -16.648272 3.532489 18.272446 -0.421624 -0.062168 -0.044324 0.548567 0.338759 0.306686 11.848676 9.686393 8.116293 25.149817 -7.674862 47.029305 -0.335757 0.249593 0.175524 0.125016 0.000061 -0.014687 2.419848 4.389591 11.900627 -5.707050 6.949331 12.287120 -9.131953 7.471502 11.475921 -5.680685 -1.111133 10.893270 17.812616 -7.712327 -17.820562 6.519305 4.803987 0.275100 -0.151435 9.524633 -0.458687 27.471832 -15.247224 -3.120506 0.434999 -0.286010 0.748011 -1.653504 1.503774 2.651853 -3.934599 -4.403604 0.036218 3.880179 -2.273012 0.014895 -0.253817 0.264878 -0.129494 +-0.122583 1.563203 0.129728 -6.370316 2.379146 -18.180025 -0.111760 -1.011142 -15.512547 -16.722134 3.250673 17.135126 -0.440092 -0.007641 -0.028148 0.517641 0.298907 0.276611 12.050435 9.344055 7.730395 24.413095 -7.506826 47.093266 -0.309598 0.220128 0.180614 0.122768 0.053540 -0.014729 2.093888 4.088501 12.456456 -5.736309 6.593401 12.289157 -9.027953 7.131604 11.195807 -5.441470 -0.945093 9.397714 17.450848 -7.749553 -17.205772 6.627807 5.445283 -0.556064 -2.006414 7.137973 -0.851998 28.450481 -15.871873 -3.580874 0.388686 -0.293490 0.725561 -1.326600 1.048519 2.015600 -2.466781 -3.484174 -0.133951 3.995342 -2.012242 0.005046 -0.274097 0.260361 -0.156308 +-0.122330 1.566770 0.126004 -6.862566 2.167047 -17.945341 0.107629 -1.063304 -14.915633 -16.067343 2.740838 15.318274 -0.466176 0.045496 -0.023798 0.488294 0.249888 0.274261 12.590283 8.930395 7.613179 23.621336 -7.181594 46.643768 -0.293799 0.218007 0.181075 0.108841 0.084267 -0.009947 2.462157 3.703882 13.238460 -5.646223 6.314587 12.249623 -9.064575 6.913510 10.781544 -5.288212 -1.016388 8.728507 17.213570 -7.698281 -17.416704 6.649496 5.805310 -1.218261 -4.689087 4.937608 -1.356343 29.498144 -17.218878 -4.320535 0.346171 -0.329679 0.732530 -1.481122 0.950674 1.551869 0.289414 -2.788719 -0.583706 3.724111 -2.041247 0.041688 -0.290575 0.286985 -0.182382 +-0.121876 1.570924 0.121349 -7.277102 2.349147 -17.486326 -0.299998 -1.329397 -14.468218 -14.614100 2.097471 13.347012 -0.474041 0.108227 -0.019255 0.420475 0.162894 0.228699 12.924494 8.456316 7.200593 22.933365 -6.960938 46.031380 -0.267872 0.182777 0.172078 0.069147 0.126971 0.012523 2.433203 3.421620 14.182847 -5.411819 5.896744 11.808802 -8.784131 6.479448 9.729136 -4.818884 -1.033386 8.062301 16.318027 -7.672631 -15.897619 6.520482 5.928554 -1.331696 -7.374492 3.514424 -1.666415 29.705997 -19.821272 -5.242815 0.285555 -0.327840 0.716255 -1.659985 1.161210 1.459286 3.382258 -2.585826 -1.051680 3.455165 -1.741092 0.094011 -0.300304 0.291817 -0.200811 +-0.121052 1.575325 0.116321 -7.176392 2.172981 -16.553852 -1.237175 -1.552315 -14.162011 -12.741652 1.438776 10.710757 -0.459499 0.110266 -0.010060 0.422467 0.170392 0.241272 12.404871 8.134282 6.572304 22.403255 -6.671595 44.991665 -0.269803 0.159104 0.171338 0.069817 0.126816 0.029661 1.367676 3.754752 14.370745 -4.876679 5.635292 11.436094 -7.680348 6.152471 9.166446 -3.867156 -1.165315 7.536928 14.857112 -6.968556 -15.042185 6.164510 6.532460 -1.823331 -10.642793 1.309045 -2.002665 29.405722 -22.136473 -6.036434 0.266510 -0.310068 0.691340 -2.195982 0.912099 0.883817 6.705359 -1.676299 -1.420694 3.741755 -1.833966 0.063025 -0.299391 0.265327 -0.188253 +-0.118246 1.580098 0.109927 -7.711839 2.075364 -15.587891 -2.088654 -1.835086 -14.202435 -10.109858 0.801686 8.486234 -0.441670 0.088577 -0.027452 0.479225 0.227037 0.306912 12.040537 7.666810 5.746990 22.462009 -6.724844 43.824299 -0.295205 0.133230 0.165084 0.084466 0.069559 0.081053 0.806512 3.957070 14.487797 -3.805872 5.297740 11.191707 -6.132635 5.824849 8.921922 -2.679579 -1.973135 7.175693 12.479910 -6.068850 -15.259023 4.406346 7.096613 -2.811057 -13.778641 -1.106776 -2.268214 28.906534 -24.795628 -6.924478 0.263654 -0.253814 0.673941 -3.153684 0.288356 0.224831 10.035183 -0.926798 -1.743588 4.105676 -1.873696 0.025924 -0.303234 0.214187 -0.132173 +-0.114862 1.584567 0.101931 -8.740442 1.905554 -14.505961 -2.350240 -1.884379 -14.665668 -7.717851 0.374252 6.604163 -0.439979 0.081357 -0.036211 0.511341 0.261599 0.356569 12.131114 7.159822 4.751263 22.863031 -6.897527 42.459049 -0.318512 0.120248 0.161797 0.093616 0.037566 0.114388 1.206626 3.983779 14.601110 -2.751334 5.130107 10.879861 -5.038743 5.701476 8.615458 -1.284028 -2.591045 7.060310 10.643373 -5.052985 -15.613962 2.561202 7.182442 -3.885128 -16.511860 -3.883932 -2.304093 27.073845 -27.518414 -7.518256 0.250585 -0.238313 0.671737 -4.112470 -0.486091 -0.340489 13.856544 -0.541222 -2.200242 4.130472 -1.385617 0.026595 -0.312973 0.194391 -0.104998 +-0.111653 1.588717 0.092943 -9.580932 1.938409 -13.071809 -2.774422 -1.995113 -15.587181 -5.479844 0.084802 4.950943 -0.450784 0.073900 -0.059684 0.516137 0.270156 0.368477 12.051138 6.629433 3.344998 23.300184 -7.073602 40.853096 -0.325742 0.112034 0.151600 0.096996 0.010127 0.127193 2.367603 3.662552 14.544272 -2.300927 5.032442 10.374562 -4.940774 5.629103 8.166381 -0.456285 -2.840114 7.537911 9.931774 -4.497946 -15.633410 1.278644 6.299837 -4.638807 -18.993738 -6.416201 -2.319404 24.388172 -28.466503 -7.368638 0.246393 -0.226625 0.678114 -4.338342 -1.046778 -0.519125 18.322056 -0.927267 -2.912134 3.519533 0.244504 0.066412 -0.319135 0.188831 -0.095946 +-0.107687 1.591367 0.083690 -10.365875 1.587422 -11.407109 -3.041477 -2.004628 -16.891371 -3.434665 -0.069550 3.456881 -0.468509 0.084028 -0.069495 0.529481 0.272144 0.419691 11.766008 6.263106 1.633495 24.164347 -7.413058 39.434261 -0.344595 0.114909 0.143007 0.096394 -0.017786 0.148005 3.174097 3.375661 14.198696 -1.732412 4.794790 9.791350 -4.461377 5.439648 7.734949 0.695003 -3.263393 7.727342 8.347216 -3.514747 -16.261333 -0.609418 5.460496 -5.295821 -21.369019 -7.883554 -2.388442 21.405855 -29.465984 -7.074156 0.232986 -0.244612 0.700580 -4.472658 -1.269404 -0.997553 22.855288 -0.506443 -3.657374 2.081141 1.298265 0.078064 -0.327344 0.196078 -0.094661 +-0.103623 1.594249 0.075134 -10.676368 -0.541627 -10.126528 -2.962898 -1.659159 -17.407568 -1.695443 -0.096874 1.489791 -0.472091 0.054948 -0.101665 0.572698 0.324096 0.480299 11.640573 6.414000 0.549522 24.135914 -7.255526 38.962532 -0.374231 0.121832 0.122955 0.116367 -0.078071 0.170036 3.389520 3.627431 13.544667 -1.203354 4.916288 9.550274 -3.726349 5.574574 7.882900 1.832137 -2.895388 8.249529 7.252992 -1.913786 -17.259890 -3.327069 4.371879 -6.073265 -23.620604 -8.793082 -2.706412 19.274776 -29.980612 -6.865378 0.242340 -0.222372 0.712701 -3.192371 -1.151574 -1.539329 25.508799 0.351278 -3.907566 1.875103 2.776520 0.017741 -0.325225 0.183665 -0.065521 +-0.100158 1.596338 0.067743 -10.743060 -4.249978 -9.004866 -2.176583 -1.023096 -17.446777 -0.428128 -0.050101 -0.618364 -0.486922 0.037035 -0.126380 0.618947 0.360951 0.545748 11.812025 6.992308 -0.135721 22.769899 -6.445992 39.025208 -0.410490 0.136140 0.103693 0.129657 -0.135156 0.191831 3.887447 3.945993 13.276469 -1.011871 5.296007 9.298170 -3.598031 5.982064 7.785995 1.855152 -1.910181 8.998516 6.085312 -0.431414 -18.625816 -5.510310 3.480265 -6.606335 -26.439394 -9.226962 -3.130168 17.302073 -29.293293 -6.484406 0.265439 -0.214550 0.751546 -1.920061 -1.061195 -1.949684 28.230600 1.015548 -4.318895 2.411154 6.408478 -0.120510 -0.323313 0.180882 -0.048902 +-0.097533 1.597633 0.059465 -10.768269 -7.751304 -8.021132 -1.151258 -0.476258 -17.733234 0.198507 0.003402 -1.863529 -0.481496 0.011635 -0.135894 0.662701 0.404263 0.602277 11.815592 7.464859 -0.753441 21.749920 -5.827280 39.087379 -0.442300 0.152349 0.090666 0.145218 -0.180264 0.205419 3.474221 4.371689 13.129768 -0.515508 5.450000 9.112489 -2.694355 6.131138 7.655249 1.867284 -0.771943 9.392219 5.225754 0.983774 -19.677412 -7.801723 2.592673 -6.890826 -29.759911 -9.232000 -3.716399 16.027205 -28.753725 -6.338119 0.291514 -0.202986 0.771694 0.135106 -0.453572 -2.622035 29.660341 2.229525 -4.469664 2.748702 9.116249 -0.250170 -0.311327 0.171817 -0.030197 +-0.095542 1.597074 0.050804 -10.682375 -11.093835 -7.073360 0.232117 -0.034097 -18.682926 0.234990 0.017817 -1.927449 -0.497061 0.011271 -0.154227 0.695764 0.438507 0.622805 12.035393 7.999822 -1.598497 20.276812 -5.091345 39.508476 -0.456617 0.143508 0.079380 0.168213 -0.197154 0.221194 2.834883 4.844185 12.949556 -0.078207 5.593792 9.071894 -1.730728 6.275786 7.728148 1.451176 0.621287 8.959104 4.835809 1.975133 -20.670458 -9.961541 1.764418 -7.482730 -32.615372 -9.744394 -4.036368 13.958906 -28.009691 -5.955474 0.294939 -0.177878 0.779480 3.292212 0.021180 -3.832868 29.940405 3.884016 -4.385713 3.431431 11.219625 -0.329157 -0.321903 0.155525 -0.019049 +-0.091720 1.595362 0.042873 -10.531297 -13.868399 -6.487523 1.454017 0.080399 -19.953587 0.083305 -0.016876 -0.470651 -0.544859 0.050466 -0.173859 0.709304 0.448273 0.636417 11.873093 8.151453 -1.935811 18.922718 -4.566908 39.686890 -0.458207 0.120636 0.071339 0.193853 -0.189472 0.235707 2.585171 4.929061 12.497750 0.263597 5.477036 9.288976 -0.986578 6.209398 8.301510 1.181025 1.761880 8.599656 3.503222 2.945799 -21.269123 -12.909211 0.250549 -8.175206 -33.912518 -10.129675 -4.193420 10.952181 -27.437540 -5.363461 0.261794 -0.185990 0.787387 6.924839 0.775010 -5.268367 29.368313 5.833721 -4.142728 4.577650 12.763718 -0.318809 -0.355796 0.153093 -0.032387 +-0.087358 1.593021 0.034954 -10.154297 -16.510944 -6.336051 2.687575 0.032264 -21.391552 -0.546176 -0.056879 2.189341 -0.582823 0.086696 -0.183261 0.734651 0.480606 0.666497 11.586700 8.275984 -2.092062 17.515150 -4.091831 40.286354 -0.461133 0.090816 0.060040 0.235942 -0.177562 0.247518 2.311195 4.932173 12.279837 0.499985 5.371855 9.665775 -0.405770 6.070732 9.070761 1.400689 2.949356 7.851189 1.935036 4.203703 -21.539318 -16.289186 -1.296401 -9.335744 -34.191463 -11.115684 -4.075907 7.255441 -26.229082 -4.458590 0.222805 -0.189869 0.773111 10.983436 1.267169 -7.181695 28.194967 8.150480 -3.735981 6.912456 14.313531 -0.148609 -0.384245 0.132853 -0.042660 +-0.082290 1.590908 0.026135 -9.674929 -19.653587 -6.441548 4.778462 0.103319 -23.311642 -2.880351 0.039479 6.514984 -0.613003 0.109717 -0.188663 0.758729 0.502808 0.692191 11.037043 8.567432 -2.312833 16.089779 -3.593109 41.139725 -0.469174 0.095240 0.049079 0.267381 -0.170634 0.242277 2.197282 4.846527 13.150053 0.622613 5.322367 9.724824 -0.215018 6.000103 8.952825 0.588603 4.860611 7.727464 1.822828 5.147485 -22.076241 -18.109533 -2.546503 -10.031176 -35.841206 -12.272231 -3.879541 4.546419 -24.582525 -3.834703 0.216030 -0.207590 0.784267 14.176224 2.165993 -8.892341 28.154507 10.636209 -3.422447 9.278061 15.029361 0.134653 -0.396183 0.136905 -0.059782 +-0.076728 1.589217 0.017525 -9.337086 -22.675936 -6.650127 7.111570 0.265263 -25.584240 -5.432250 0.419341 12.321162 -0.636163 0.111654 -0.204623 0.789197 0.526674 0.726981 10.958919 8.799173 -2.446165 14.123393 -2.879994 41.935795 -0.487384 0.104296 0.040392 0.285007 -0.192338 0.248215 2.081067 4.785146 14.379545 0.974503 5.271582 9.644013 0.256006 5.960065 8.507165 -0.287498 6.491506 8.313399 1.108517 6.137515 -22.766132 -19.582798 -3.797518 -10.279150 -38.393330 -13.199995 -3.839222 2.764426 -24.543068 -3.639683 0.226223 -0.216343 0.810983 16.254305 3.311919 -10.049994 29.119520 12.619970 -3.263388 10.961274 15.305230 0.368482 -0.402988 0.142162 -0.060848 +-0.070639 1.587947 0.009293 -8.588428 -25.256002 -7.034620 9.284584 0.214736 -28.314030 -8.723649 1.278155 19.648899 -0.619495 0.064143 -0.228233 0.837040 0.585594 0.758053 10.341713 8.946970 -2.767771 12.391591 -2.348774 42.892838 -0.521324 0.120074 0.027642 0.298312 -0.245361 0.265464 1.843598 4.651171 15.952848 1.166214 5.239953 9.381445 0.535340 5.878619 7.715352 -1.167545 8.114583 9.229746 0.719982 7.116445 -23.612904 -20.519329 -5.584527 -9.936342 -40.615978 -13.899993 -3.865438 1.144542 -25.576572 -3.512211 0.267486 -0.182611 0.826508 18.022318 4.773543 -10.540502 30.964613 13.816966 -3.302941 11.883787 16.041054 0.493940 -0.387114 0.131579 -0.020390 +-0.064251 1.587862 0.001830 -7.582339 -27.892616 -7.406356 11.398551 0.158419 -30.935560 -12.378336 2.696329 27.031349 -0.615334 0.024362 -0.251280 0.858736 0.620031 0.785345 9.368890 8.993286 -3.085620 10.803086 -1.870944 43.360626 -0.545688 0.151365 0.020230 0.302255 -0.291567 0.264251 1.344945 4.636975 17.044071 1.277169 5.192320 9.088566 0.881750 5.828482 7.038770 -1.838528 9.580663 11.048082 -0.033992 8.218720 -24.259003 -20.974840 -7.602017 -9.410316 -43.056358 -14.798287 -3.768966 -0.274711 -26.678377 -3.435072 0.295781 -0.194723 0.850567 19.080612 6.628206 -10.669480 33.482502 14.985076 -3.254134 12.418055 16.110548 0.547830 -0.373111 0.153378 -0.001379 +-0.057341 1.588561 -0.005188 -6.809907 -30.579470 -7.550349 13.400704 0.121882 -33.016388 -15.408962 4.352577 33.676102 -0.626646 0.023545 -0.263316 0.858298 0.613667 0.795665 8.653202 9.076246 -3.766886 9.173681 -1.362657 43.767143 -0.547694 0.166566 0.016648 0.299375 -0.304079 0.257012 1.180748 4.611382 17.794598 1.416092 5.238131 8.803474 1.131272 5.921054 6.466387 -2.449370 10.721713 12.514604 -0.285077 8.840532 -23.884501 -21.824026 -9.999587 -8.896431 -45.014500 -15.913357 -3.560483 -1.642877 -28.329353 -3.389562 0.301999 -0.213824 0.869005 20.552895 8.372422 -10.289063 34.785896 15.441662 -3.345138 13.876097 18.417870 0.850852 -0.370481 0.171608 -0.008109 +-0.050809 1.591287 -0.012226 -6.123955 -33.404877 -7.895464 15.146324 0.036083 -34.329250 -17.774126 6.158177 39.931210 -0.658255 0.021642 -0.291472 0.870189 0.615126 0.847926 8.029611 9.127069 -4.338978 7.508443 -0.824190 44.040855 -0.566306 0.185212 0.002085 0.301694 -0.349018 0.258370 0.837340 4.727928 18.217047 1.625928 5.275351 8.767420 1.628955 6.021292 6.427030 -2.078348 11.463920 14.774514 -1.915507 10.211136 -24.178553 -22.797016 -12.876400 -8.575180 -46.401260 -17.695297 -3.031675 -3.264457 -29.202883 -3.167481 0.304311 -0.247500 0.908528 21.120480 10.514746 -9.856177 36.316490 16.214890 -3.311450 15.704465 20.593342 1.256162 -0.374275 0.194726 -0.016687 +-0.044784 1.595225 -0.018543 -5.243031 -36.308411 -8.383995 16.863348 0.024552 -35.057407 -20.436405 8.400620 45.672112 -0.705283 0.028226 -0.325621 0.902137 0.633898 0.910241 7.333644 9.236161 -5.073282 5.537334 -0.134703 44.540131 -0.595285 0.202722 -0.012282 0.316869 -0.393063 0.270928 0.219744 5.124094 18.338137 1.784375 5.417981 8.933867 2.215036 6.213049 6.807394 -1.600638 12.038110 16.592712 -3.133415 11.378983 -25.478693 -23.222706 -15.719395 -8.550082 -48.061256 -20.138439 -2.316854 -4.268013 -30.914459 -3.161460 0.305300 -0.280671 0.961503 21.850754 12.503804 -9.593614 37.586441 17.192619 -3.314294 17.168060 23.052763 1.671400 -0.392749 0.219261 -0.023702 +-0.037880 1.601872 -0.024103 -3.944030 -38.643448 -9.156026 17.917011 -0.480206 -35.352627 -23.084803 10.693775 50.365582 -0.760832 0.039299 -0.373129 0.930771 0.653277 0.982446 6.154510 8.923654 -5.498709 3.367103 0.524818 44.249519 -0.627968 0.231209 -0.041062 0.334425 -0.446824 0.285819 -0.361312 5.279794 18.052982 1.663221 5.347169 9.327538 2.453972 6.220126 7.678231 -1.024856 12.227106 18.894524 -4.340035 12.329124 -27.314934 -23.006369 -19.134781 -8.570673 -49.065998 -22.984152 -1.486997 -3.958987 -32.332741 -3.495274 0.298242 -0.329179 1.019500 22.184492 15.048985 -9.186317 39.179314 18.316572 -3.430213 18.396908 26.191151 2.081500 -0.408578 0.261018 -0.029149 +-0.030149 1.611075 -0.028939 -2.329648 -40.833126 -10.386823 18.169176 -1.266523 -34.731030 -25.180538 12.671412 53.777958 -0.806785 0.034349 -0.425188 0.951582 0.682212 1.029198 4.770388 8.366419 -5.484551 1.306127 1.101586 43.291843 -0.648813 0.245138 -0.060089 0.351240 -0.496251 0.298748 -1.128718 5.329763 18.030581 1.481508 5.127775 9.848531 2.584974 6.069211 8.565516 -0.546830 12.558703 20.621790 -5.885605 13.296539 -29.129614 -23.385605 -22.317192 -8.452600 -48.575809 -25.492346 -1.046355 -4.139489 -35.633602 -3.682168 0.286223 -0.359278 1.054532 22.967888 17.741011 -9.044477 39.877590 20.014585 -3.284785 20.479877 28.782412 2.791781 -0.426642 0.292744 -0.023073 +-0.023760 1.619569 -0.032854 -1.326498 -43.010807 -10.709376 18.430225 -1.895622 -34.283737 -26.259142 14.162395 56.798191 -0.819272 0.039760 -0.437249 0.966845 0.698361 1.059230 4.112092 7.786780 -5.768792 -0.637084 1.620485 41.965118 -0.659374 0.240475 -0.067026 0.361953 -0.509176 0.310738 -1.792899 5.393530 17.076418 1.463870 4.935923 10.288431 2.979496 5.876730 9.544247 -0.114180 12.799664 21.578428 -6.735719 14.133934 -29.321909 -22.626268 -25.042858 -8.110881 -48.956902 -28.113268 -0.340618 -3.898420 -39.556431 -4.051702 0.272360 -0.363527 1.058355 23.371780 20.147465 -8.846654 40.778412 21.673870 -2.934761 22.840670 31.196224 3.653859 -0.435051 0.290253 -0.019083 +-0.016223 1.628408 -0.036436 -0.216050 -45.438114 -11.067581 18.018665 -2.597883 -33.349453 -26.379347 15.012912 59.110443 -0.835889 0.056691 -0.438466 0.969832 0.701991 1.067346 3.373744 7.170098 -5.937366 -2.400672 2.029167 40.177803 -0.666412 0.220319 -0.066142 0.371481 -0.500474 0.322498 -2.171825 5.444689 15.962061 1.283122 4.864514 10.808869 3.004338 5.795840 10.635302 0.692456 13.137923 22.173567 -7.396810 15.286156 -29.202721 -21.606020 -27.714966 -7.596881 -48.126549 -30.798569 0.248973 -3.130774 -45.408188 -4.650240 0.251227 -0.364526 1.062479 23.310848 22.688040 -8.672698 42.126072 23.556051 -2.417055 24.519754 33.130379 4.331645 -0.453022 0.280190 -0.029984 +-0.008526 1.638044 -0.039496 0.345234 -47.872005 -10.937167 17.421329 -3.125296 -32.033611 -25.642794 15.282559 61.087753 -0.837751 0.067096 -0.437068 0.974866 0.701410 1.089191 3.166177 6.576193 -5.947394 -4.319799 2.479144 37.531116 -0.657222 0.196616 -0.065618 0.376822 -0.502651 0.327464 -1.956878 5.400740 14.711784 1.194172 4.918184 11.425623 2.904609 5.784266 11.959918 1.117989 13.210009 21.947445 -8.610518 16.099981 -28.826668 -20.874163 -29.544418 -7.399006 -46.854317 -34.086674 1.400307 -2.687394 -50.646118 -4.816702 0.230056 -0.344587 1.039803 23.148514 24.658007 -9.095463 43.398216 26.029205 -1.486876 26.502352 34.626743 5.208508 -0.460241 0.250342 -0.029836 +-0.000935 1.646505 -0.041518 0.539706 -50.054752 -9.855972 16.460606 -3.308074 -30.890961 -23.812643 14.871906 62.651970 -0.886891 0.138802 -0.433379 0.949382 0.664410 1.087481 2.945152 6.139464 -6.565036 -5.846557 2.695843 34.269836 -0.633040 0.144105 -0.075635 0.393932 -0.459723 0.330813 -1.115814 5.348762 11.864999 0.971613 4.946169 12.265228 2.660460 5.698934 14.396877 1.647901 13.167585 20.787241 -9.799139 16.669756 -28.166208 -18.044188 -30.541647 -7.698162 -46.300476 -37.622993 3.030749 -0.091714 -55.815071 -6.255778 0.165026 -0.352996 1.020585 21.673033 26.092312 -10.106341 45.357559 29.047106 -0.123314 27.783638 36.686089 6.012128 -0.495624 0.225790 -0.074628 +0.005256 1.654104 -0.042790 0.180768 -51.755867 -8.524004 15.233724 -3.320123 -29.348419 -20.762964 13.701805 64.384651 -0.922192 0.206464 -0.415517 0.926679 0.639159 1.071826 3.150133 5.716417 -6.779891 -7.098650 2.763778 30.621151 -0.603276 0.075717 -0.060993 0.411713 -0.396930 0.338897 -0.248446 5.369173 8.997069 0.924284 4.954095 13.070316 2.593556 5.510279 16.858480 2.638926 13.059347 19.503614 -11.000761 17.470186 -27.056196 -14.042281 -30.683777 -8.197059 -46.377510 -41.534576 5.418648 4.556721 -60.567123 -9.093345 0.088124 -0.352478 0.981064 18.646257 26.848083 -11.631490 47.801434 32.582085 2.096767 29.180138 39.328918 7.140772 -0.542986 0.187719 -0.111771 +0.011177 1.660779 -0.043640 -0.469235 -53.071259 -6.989410 13.761934 -3.153218 -27.470335 -17.129795 11.876129 65.177322 -0.911274 0.253083 -0.387259 0.916468 0.637943 1.050353 3.287821 5.362221 -6.796794 -7.664825 2.653923 27.192055 -0.570571 -0.010453 -0.049478 0.430593 -0.333544 0.360278 0.547004 5.408997 6.066652 1.050094 4.879773 13.713514 2.748568 5.061334 19.246479 3.534879 12.996459 18.051666 -11.654007 18.193640 -24.736010 -10.033770 -30.943958 -8.249392 -46.187489 -45.406017 7.950586 13.101711 -64.287277 -14.734966 0.016811 -0.296766 0.895948 15.871672 27.807774 -13.028104 49.537968 36.451687 4.874414 29.105736 41.918633 7.908497 -0.569591 0.107595 -0.112899 +0.016387 1.666238 -0.044848 -0.959668 -53.882881 -5.552499 12.213819 -2.928858 -25.481783 -13.724709 9.862381 64.569145 -0.916958 0.324771 -0.356828 0.901538 0.634897 1.014652 3.142250 5.076992 -6.864185 -7.635260 2.412869 24.364468 -0.535911 -0.107094 -0.038566 0.459450 -0.241564 0.385661 1.130234 5.566401 3.170544 1.058378 4.840948 14.234748 2.809404 4.619390 21.631672 4.854272 13.062694 16.165592 -11.430703 18.843885 -22.495291 -5.166532 -30.817669 -8.758216 -46.752029 -49.712818 11.130754 25.075491 -65.071457 -22.712080 -0.075701 -0.247868 0.810599 12.475660 27.929701 -14.499917 51.519993 40.565510 8.342980 28.173979 45.857697 8.624625 -0.613121 0.031345 -0.127145 +0.020830 1.670397 -0.046280 -1.173458 -54.036171 -4.447215 10.211468 -2.619926 -23.342306 -9.943294 7.504820 62.743015 -0.924339 0.395978 -0.316326 0.881915 0.642009 0.967881 2.867887 4.733041 -6.549827 -7.494579 2.181579 21.506014 -0.487309 -0.203339 -0.012636 0.501230 -0.130522 0.391574 1.392416 5.757218 0.467651 1.095656 4.768246 14.747674 2.965233 4.081998 24.094690 6.116565 13.032990 13.736625 -11.123012 19.097061 -20.254526 -0.352057 -30.210875 -9.411083 -46.832886 -54.058926 14.280040 37.173328 -63.409958 -30.079004 -0.177564 -0.218721 0.706202 8.951498 27.810001 -15.535131 52.720387 45.184765 12.208359 22.750887 51.308090 7.374693 -0.663522 -0.039998 -0.151357 +0.024779 1.673042 -0.046942 -1.207814 -53.699409 -3.406551 8.081964 -2.286350 -21.152769 -6.200592 5.203951 59.949688 -0.955523 0.495282 -0.271555 0.843363 0.618496 0.903873 2.424139 4.396047 -6.316773 -7.264716 1.935531 18.867821 -0.429256 -0.303297 0.012807 0.538343 0.002920 0.389868 1.364346 5.850482 -1.809862 1.178314 4.569081 14.985292 3.229892 3.523268 26.012440 6.973453 13.034779 11.015517 -10.673641 18.890011 -17.991638 3.776378 -28.534470 -9.806660 -47.814186 -58.275261 18.333158 47.887138 -61.011257 -35.994171 -0.289825 -0.209766 0.615003 5.595275 26.873817 -16.162714 53.966068 49.995464 16.869511 13.628213 56.403671 3.585502 -0.725472 -0.098484 -0.201196 +0.028205 1.674232 -0.046871 -1.731077 -53.389935 -2.209347 6.634295 -1.896335 -18.054928 -3.255263 3.346537 55.452576 -0.952764 0.580243 -0.230159 0.815210 0.607671 0.854501 2.321575 4.141191 -6.075737 -7.021814 1.742799 16.766270 -0.387872 -0.405575 0.024409 0.563725 0.112042 0.420521 1.612369 5.624309 -3.722794 1.276926 4.217242 15.137303 3.405852 2.949592 27.700352 7.629457 13.192994 8.730769 -10.962315 18.834248 -16.023176 6.578010 -26.134007 -9.956131 -48.455280 -62.111660 22.208340 55.361801 -57.581387 -38.757103 -0.396962 -0.167755 0.511097 1.730402 25.434643 -16.466232 55.496189 55.334835 22.541298 -1.647177 60.404892 -4.847795 -0.765889 -0.171096 -0.211955 +0.032364 1.674111 -0.046728 -2.256626 -52.909401 -1.212368 5.671906 -1.638146 -14.262360 -1.447922 2.107789 49.348183 -0.978126 0.660523 -0.218000 0.799541 0.601928 0.820214 2.373644 3.955387 -5.971650 -6.946975 1.612850 14.967504 -0.349134 -0.499687 0.018829 0.599420 0.192782 0.444575 1.776198 5.200869 -5.293624 1.343317 3.707423 15.260667 3.587335 2.341715 29.165981 7.954035 13.782743 6.735585 -10.919444 18.844135 -14.506988 9.238744 -24.303852 -9.831750 -47.349991 -65.011215 24.013906 62.591080 -52.897907 -40.513161 -0.491916 -0.122490 0.430504 -1.964227 24.323439 -16.556448 55.734577 60.556126 27.633781 -19.343679 61.188793 -15.520700 -0.812115 -0.239581 -0.227336 +0.036628 1.672208 -0.044945 -3.290248 -51.874744 0.218740 5.343167 -1.660143 -10.303707 -0.142126 1.052480 42.519733 -0.991421 0.721342 -0.201778 0.784318 0.588885 0.784218 2.616390 3.734074 -5.848286 -6.675889 1.426349 13.244569 -0.319236 -0.567511 0.019174 0.619432 0.260619 0.460455 2.390364 4.560790 -6.592905 1.469314 3.057482 15.107872 3.782181 1.669818 29.797119 7.957111 14.290574 5.547637 -10.542043 18.747747 -13.086506 11.997070 -22.997919 -9.590491 -46.092548 -66.755424 24.712898 66.278648 -48.393105 -39.981495 -0.555400 -0.086110 0.373948 -5.343866 23.352652 -16.281370 55.876293 64.525116 31.861109 -32.759510 59.920414 -23.383692 -0.843582 -0.289677 -0.241344 +0.040674 1.669608 -0.043613 -3.971669 -49.764397 1.110065 4.906065 -1.693422 -5.860209 1.581229 -0.038105 34.556232 -1.004003 0.768534 -0.182840 0.781436 0.604544 0.758929 2.851780 3.597019 -5.586694 -6.457114 1.328944 12.091945 -0.300859 -0.630621 0.023102 0.653213 0.322256 0.475104 2.864322 3.852616 -7.794526 1.681827 2.299321 15.162473 4.052951 0.829506 30.627407 8.214466 13.888855 4.378451 -10.685382 18.297972 -12.226327 13.817783 -21.144844 -9.592664 -44.480293 -68.980453 25.606787 68.248352 -44.624580 -38.483128 -0.613867 -0.067973 0.316851 -8.763444 21.954578 -16.415827 55.347401 67.717171 34.784950 -42.139133 57.252598 -28.182941 -0.875570 -0.334535 -0.250543 +0.046366 1.665878 -0.042233 -5.266114 -47.395664 2.447992 5.499413 -1.687430 -1.929722 2.888417 -0.734935 26.990812 -1.021686 0.821962 -0.172238 0.789213 0.629818 0.740743 3.344638 3.586419 -5.642381 -5.905100 1.213343 11.412690 -0.281618 -0.706338 0.022509 0.694830 0.380198 0.499937 4.427049 3.121125 -8.798155 1.844641 1.628747 15.129389 3.878113 0.099112 31.315825 8.514285 13.229555 3.092165 -10.868461 17.653017 -11.290122 15.057023 -19.230263 -10.093170 -43.471043 -71.199425 26.536755 67.296043 -40.778664 -35.348030 -0.682056 -0.033064 0.249698 -11.940026 19.959269 -16.712763 55.291599 69.953644 37.190300 -48.890438 54.577919 -31.261019 -0.915902 -0.393446 -0.250274 +0.052584 1.662059 -0.042529 -6.431387 -45.600491 3.536648 6.545576 -1.448728 1.483114 3.318952 -0.881176 20.197004 -1.053736 0.890126 -0.173544 0.781340 0.633095 0.723494 3.656317 3.838358 -6.202827 -5.067804 1.155454 11.784363 -0.254432 -0.782688 0.007056 0.731455 0.436476 0.522428 5.698939 2.602547 -9.497391 2.025046 1.099972 15.120334 3.744249 -0.509495 31.891428 8.952615 12.836171 1.812229 -10.962914 17.272177 -10.331335 16.333370 -17.039124 -10.781209 -41.696667 -73.221825 27.045338 66.291214 -38.236027 -33.038532 -0.764934 -0.000685 0.185126 -14.918709 17.772314 -17.137106 55.093426 71.923866 39.101379 -53.966152 51.682739 -33.063679 -0.957524 -0.446228 -0.260021 +0.059402 1.659711 -0.043697 -6.941912 -43.825195 4.096900 7.384290 -1.291045 3.835479 3.335922 -0.885262 14.936798 -1.070965 0.941834 -0.168678 0.763326 0.608673 0.717506 3.259534 4.009666 -6.897241 -3.953108 0.989223 12.205113 -0.233730 -0.836430 0.000128 0.737230 0.469353 0.544554 6.251256 1.813306 -9.726709 2.104901 0.305617 15.195408 3.689377 -1.289448 32.115398 9.139599 12.732682 0.892009 -11.632235 17.393703 -9.632825 15.845903 -15.424744 -10.881114 -35.908157 -73.655998 23.703051 66.948273 -38.058380 -32.749851 -0.824684 0.018171 0.148919 -17.233620 16.339539 -17.520828 53.774715 73.631668 39.765720 -57.063835 49.789803 -33.938019 -0.982580 -0.481283 -0.269793 +0.065650 1.658256 -0.044277 -6.960798 -42.819855 4.254874 7.894347 -1.021454 5.713054 2.831353 -0.751921 10.657269 -1.093285 0.974740 -0.174080 0.777262 0.629688 0.723006 2.666457 3.954504 -7.205228 -3.366493 0.862160 11.838869 -0.224978 -0.876358 -0.012163 0.769780 0.490264 0.557184 6.221876 1.351170 -9.992504 2.197429 -0.202390 15.383808 3.802520 -1.891260 32.659401 9.215397 12.493174 -0.003385 -11.743753 17.016123 -9.390532 15.405009 -13.737053 -11.154136 -33.295506 -74.476639 22.625280 67.601135 -37.414944 -32.410606 -0.863725 0.039984 0.114554 -18.051785 15.042164 -18.000347 54.186207 75.059509 41.497402 -58.337666 48.361847 -33.912193 -1.007614 -0.516090 -0.269926 +0.070823 1.657103 -0.043917 -6.624625 -42.166958 4.360177 8.257011 -0.711776 6.669240 1.727280 -0.532054 7.685227 -1.131355 1.010287 -0.180984 0.779319 0.629125 0.711936 2.132733 3.850815 -7.505539 -3.429740 0.796503 11.226822 -0.221321 -0.889229 -0.010573 0.786140 0.518447 0.559677 5.580051 0.903072 -10.195440 2.176279 -0.735132 15.361766 4.049510 -2.390837 32.779556 9.361556 12.301540 -0.254739 -11.477374 16.561384 -9.548285 15.325025 -12.597578 -11.071490 -34.168427 -74.630302 23.741774 69.028702 -37.350571 -33.110500 -0.888781 0.022408 0.122476 -18.965796 14.503507 -18.262161 56.813812 75.778625 44.233711 -58.781261 47.249149 -33.698475 -1.039101 -0.507392 -0.288164 +0.077689 1.658636 -0.043071 -6.150938 -41.920200 4.456381 8.277065 -0.478351 6.700149 0.481968 -0.337764 6.213029 -1.131555 1.012600 -0.176054 0.794275 0.646771 0.697315 1.232634 3.713801 -7.990142 -3.224606 0.705244 10.715714 -0.222676 -0.893515 -0.007201 0.799883 0.533038 0.558755 5.059777 0.589834 -10.146471 2.153121 -1.048556 15.340273 4.230238 -2.765184 32.699535 9.375555 11.903297 -0.494516 -10.807954 15.824446 -9.379675 14.942574 -12.093244 -11.114971 -33.925117 -74.529976 23.870192 69.151634 -38.333408 -33.687523 -0.879296 0.033744 0.118045 -18.729731 14.625992 -18.368483 57.384201 76.129707 45.143669 -58.358936 47.403790 -33.485218 -1.044106 -0.516080 -0.284995 +0.085484 1.661927 -0.041732 -5.664074 -42.278553 4.492303 7.746435 -0.331188 6.350278 -0.283085 -0.236999 5.495908 -1.113932 0.962798 -0.181273 0.814125 0.668730 0.716813 0.357089 3.470462 -8.216311 -3.202318 0.606696 9.835293 -0.241930 -0.852172 -0.004854 0.794553 0.488132 0.543959 5.107885 0.546471 -9.911638 2.062612 -1.049525 15.409582 3.960825 -2.791318 32.515560 9.518795 11.310336 -0.036939 -10.851774 15.532160 -10.103300 13.933469 -12.918200 -11.285889 -32.305183 -74.560608 22.812469 67.706062 -39.827080 -33.549690 -0.824694 0.024096 0.146381 -18.389204 15.134132 -18.385303 57.119015 75.494225 44.306969 -57.490253 48.662090 -33.653316 -1.019513 -0.497376 -0.270958 +0.093596 1.664203 -0.040188 -4.980245 -42.585957 4.528403 6.748477 -0.345814 5.401388 -0.612134 -0.229382 5.507876 -1.061504 0.872676 -0.184004 0.860353 0.734717 0.752643 -0.608260 3.066938 -8.290551 -3.396968 0.495681 8.386323 -0.279327 -0.794633 0.002359 0.793846 0.420124 0.535340 4.990063 0.232380 -9.595216 1.811546 -1.217914 15.452978 3.632563 -3.002324 32.208752 9.137323 11.172256 0.456108 -11.087883 15.433730 -11.303026 13.811772 -13.750783 -11.015731 -31.568436 -72.803108 21.177378 68.638733 -41.581448 -35.130375 -0.744773 0.028673 0.165079 -18.155415 15.966803 -18.517729 58.780121 74.756401 45.004471 -56.288155 50.593178 -34.050549 -0.974973 -0.482421 -0.223742 +0.100936 1.665655 -0.037504 -4.851494 -42.918503 4.991039 6.128959 -0.414692 4.447311 -0.730564 -0.226466 5.675186 -1.012589 0.837694 -0.165143 0.824244 0.697142 0.730515 -1.125341 2.800078 -8.398616 -3.701256 0.393578 7.181369 -0.277407 -0.768437 0.018475 0.743861 0.407759 0.529132 5.622285 0.062739 -9.338334 1.646016 -1.260815 15.273209 3.222669 -2.966510 31.482546 8.900829 11.097034 1.196562 -11.634215 15.757787 -11.096888 12.574641 -14.611901 -10.659853 -32.807045 -71.467697 21.783295 67.862419 -44.899872 -36.592525 -0.718117 0.020984 0.170223 -17.496250 16.396448 -18.462267 60.482620 73.606079 45.763588 -53.659897 53.374538 -33.807327 -0.938385 -0.459205 -0.212416 +0.107944 1.666422 -0.035417 -4.596417 -43.395435 5.175663 5.457792 -0.496397 3.517495 -1.078575 -0.196427 6.311500 -0.974749 0.780668 -0.163388 0.820627 0.689769 0.744531 -1.642789 2.546052 -8.427622 -4.049558 0.309586 6.042753 -0.299952 -0.703966 0.026589 0.705866 0.356667 0.517156 6.046828 0.041803 -8.905970 1.527175 -1.197564 15.290967 2.845442 -2.827752 30.899927 8.216281 11.102348 2.039486 -12.221486 15.800844 -12.111193 11.664289 -16.094206 -10.256409 -33.386311 -69.210411 20.947456 67.827560 -48.146358 -38.698151 -0.657422 -0.008357 0.211921 -16.078112 17.573017 -18.489208 60.644829 72.001205 44.495499 -49.511589 56.666138 -32.676971 -0.895810 -0.410989 -0.194314 +0.113973 1.666501 -0.033141 -4.500572 -44.459019 5.589544 4.845727 -0.572288 2.760034 -1.405391 -0.158790 6.873722 -0.938904 0.720062 -0.169756 0.805515 0.658026 0.760777 -1.968096 2.420747 -8.855069 -4.587792 0.254511 5.263743 -0.316734 -0.631423 0.030523 0.650070 0.290673 0.501396 6.165148 0.031671 -8.372957 1.463254 -1.149219 15.194142 2.717439 -2.623543 29.967518 7.220787 11.423241 3.161364 -13.030349 16.043474 -13.118226 11.026108 -17.601217 -9.535933 -35.553368 -65.519913 20.492027 68.550468 -53.134136 -42.831207 -0.589981 -0.037744 0.265702 -14.804384 19.207966 -18.320457 60.737556 69.818146 42.683041 -44.328365 60.766979 -31.053774 -0.846057 -0.354925 -0.178190 +0.119838 1.664188 -0.030562 -4.421982 -45.209560 6.166308 4.473031 -0.678857 1.548273 -1.955051 -0.065309 7.805702 -0.916213 0.691242 -0.171022 0.774650 0.596437 0.775521 -2.267616 2.453084 -9.706220 -4.968254 0.199363 4.946353 -0.326653 -0.575739 0.033555 0.585762 0.241905 0.495994 6.181069 0.107803 -7.738973 1.522928 -1.077061 14.888722 2.838022 -2.415406 28.691483 6.613058 11.705554 4.125902 -14.210561 16.619797 -13.880965 9.641332 -18.575409 -8.817298 -38.789005 -62.281868 21.170906 69.500053 -59.297649 -48.146931 -0.548917 -0.071280 0.320779 -13.292752 20.391663 -18.324484 62.099762 67.012436 41.241535 -34.907124 64.508705 -26.134050 -0.808710 -0.302179 -0.176434 +0.125322 1.661303 -0.028417 -4.377361 -45.672707 6.526807 4.219688 -0.768439 0.590855 -2.410159 0.026082 8.730102 -0.891450 0.652645 -0.179821 0.748705 0.550470 0.795075 -2.341130 2.569870 -10.539226 -5.786746 0.226897 5.222316 -0.341068 -0.518091 0.030929 0.528253 0.186050 0.491540 5.754165 0.033900 -6.946912 1.606812 -1.198418 14.751355 3.033429 -2.419646 27.453598 6.516326 12.231105 5.118654 -15.293788 17.574949 -14.951193 7.721933 -19.823172 -8.838898 -41.099621 -58.811192 20.892488 65.099014 -67.298988 -50.746021 -0.508307 -0.101154 0.372155 -10.801096 21.643499 -18.480904 63.152889 63.530182 38.564259 -18.909105 67.012184 -15.848239 -0.768460 -0.249448 -0.168292 +0.131013 1.657694 -0.026598 -4.453258 -45.942970 6.991978 4.415339 -0.856235 -0.659217 -3.494602 0.243570 10.097691 -0.873301 0.613409 -0.196407 0.726417 0.503780 0.813032 -2.406764 2.942341 -12.055311 -6.285938 0.339976 6.883733 -0.351333 -0.469104 0.020538 0.474887 0.125047 0.486048 5.265535 -0.026331 -6.048739 1.705586 -1.306025 14.418541 3.359947 -2.434633 25.993261 6.661047 12.708971 6.387573 -15.911964 18.513685 -15.605532 5.632679 -21.029112 -8.941526 -44.075436 -55.430077 20.366735 51.416321 -73.424759 -44.198700 -0.463724 -0.115237 0.424151 -7.638421 22.793562 -18.287312 64.739471 59.724045 35.616867 -1.782592 66.147781 -4.215763 -0.729727 -0.210127 -0.160917 +0.136965 1.653489 -0.023974 -4.521633 -45.725830 7.388296 4.483037 -1.057476 -2.085336 -4.176654 0.403314 11.732553 -0.867445 0.592837 -0.208538 0.691294 0.435699 0.832543 -2.533491 3.337996 -13.621043 -6.774370 0.482145 8.947886 -0.359912 -0.411738 0.010253 0.416349 0.072407 0.475403 4.871581 -0.246062 -5.124758 1.836820 -1.582595 14.014394 3.768221 -2.510570 24.460619 6.810654 12.864364 7.930159 -16.746666 19.227747 -16.260281 2.965408 -22.061213 -8.680306 -48.570004 -51.732334 19.659237 27.193115 -76.521805 -26.792507 -0.426237 -0.157376 0.488585 -4.904137 23.625067 -17.895819 66.220039 55.488194 31.908815 12.223148 63.248169 4.490403 -0.693902 -0.152226 -0.170990 +0.143052 1.648896 -0.020363 -4.495141 -44.764992 7.658629 4.488468 -1.379789 -3.798103 -4.596609 0.525367 14.010952 -0.831222 0.531814 -0.217955 0.682929 0.409611 0.856343 -3.078216 3.660815 -15.151029 -6.676285 0.579731 11.220285 -0.382651 -0.351531 0.003074 0.365460 -0.001633 0.469220 4.757620 -0.595176 -3.978148 2.049545 -1.920521 13.467404 4.118104 -2.689900 22.567736 6.930366 12.380527 9.402244 -17.516674 19.528595 -16.929794 -0.012258 -22.851067 -8.408978 -52.526741 -48.008633 18.469044 -7.590754 -76.449936 0.444432 -0.357465 -0.169757 0.540488 -2.011261 23.782238 -17.223866 66.824760 50.381554 26.817139 24.083410 59.091946 10.577999 -0.642315 -0.114108 -0.150107 +0.148862 1.643875 -0.017632 -4.183511 -43.525417 7.595090 4.401174 -1.802899 -5.546171 -5.170064 0.673737 16.674118 -0.789561 0.464006 -0.230393 0.687754 0.401881 0.869909 -3.802325 3.991675 -16.874559 -6.649596 0.738451 14.440981 -0.405543 -0.287675 0.003462 0.321853 -0.069122 0.463111 4.463219 -0.795635 -2.599943 2.312649 -2.114779 12.826352 4.533935 -2.694463 20.484848 6.896309 11.852939 11.126021 -17.182184 19.496807 -17.269096 -2.752407 -23.620628 -7.963122 -55.815571 -44.499950 16.535870 -26.048658 -71.816406 13.034382 -0.282766 -0.171104 0.587890 0.886948 23.275854 -16.631189 65.736572 45.030788 20.954069 33.301323 52.791771 13.676422 -0.595075 -0.076559 -0.119057 +0.154883 1.639500 -0.014347 -3.952111 -42.859989 7.177482 4.217796 -2.165020 -6.750565 -5.872120 0.866282 19.222778 -0.753862 0.359087 -0.255454 0.728589 0.453576 0.912722 -4.427598 4.334466 -18.402655 -6.350749 0.890851 17.821808 -0.450297 -0.204934 -0.004609 0.309768 -0.171708 0.445258 4.493441 -0.795755 -0.803910 2.651134 -2.057292 12.403310 4.741822 -2.486247 18.691319 6.296203 11.196002 12.656752 -17.367382 18.993441 -18.930382 -5.976078 -23.964989 -7.841374 -57.104824 -41.319092 14.021559 -37.124447 -66.126198 18.605885 -0.178738 -0.184126 0.643282 3.962199 22.460783 -16.232822 64.023254 40.227348 15.564224 37.379642 45.102654 12.936171 -0.542611 -0.035657 -0.076470 +0.161944 1.634901 -0.011759 -3.624690 -41.216553 6.610679 3.951601 -2.668632 -8.204784 -6.136802 0.959292 21.872089 -0.759114 0.302059 -0.286162 0.749270 0.468503 0.947720 -5.367487 4.698485 -20.130106 -5.477237 0.915694 21.989759 -0.486524 -0.122276 -0.012147 0.293463 -0.247265 0.428272 4.711639 -1.034817 1.278527 2.975082 -2.259655 11.942585 4.859623 -2.419474 16.898903 5.903854 10.808914 13.883596 -17.309713 18.336639 -21.036810 -9.521943 -23.761175 -7.978493 -58.523380 -37.839813 11.367652 -43.421028 -58.994205 19.311821 -0.106374 -0.233111 0.721655 6.406395 20.762794 -15.469452 62.367306 35.865894 10.767262 36.992363 39.701912 10.647602 -0.516289 0.035127 -0.064840 +0.170064 1.629130 -0.009075 -3.444241 -39.284695 6.231213 3.829916 -3.293027 -9.879519 -6.495755 1.058800 24.725649 -0.754982 0.269786 -0.300205 0.761945 0.459902 0.973735 -6.257490 5.073783 -22.343895 -4.398115 0.820258 26.873705 -0.512405 -0.067296 -0.024008 0.270396 -0.300231 0.423904 5.269894 -1.382351 3.423795 3.371609 -2.480225 11.244256 5.033272 -2.412079 14.893768 5.392836 10.416062 14.909293 -16.869602 17.628906 -21.772068 -13.232208 -23.038097 -7.981762 -59.119865 -34.393570 8.746590 -44.601337 -51.713383 16.603939 -0.047086 -0.256108 0.782542 8.527350 18.771461 -14.726421 60.229092 31.975515 6.909196 34.578453 34.544041 8.062260 -0.488524 0.075146 -0.055864 +0.179023 1.624232 -0.005680 -3.033178 -37.391220 5.512206 3.491205 -3.902393 -11.113439 -7.162653 1.214173 27.127600 -0.736799 0.192764 -0.323251 0.797155 0.504792 0.995987 -7.372683 5.268885 -24.478722 -3.137982 0.572447 31.934090 -0.546745 0.001534 -0.033947 0.269889 -0.373712 0.403724 5.922967 -1.927678 5.699970 3.633477 -2.782386 10.548667 4.868347 -2.539112 13.010868 4.513954 10.171990 16.265821 -16.226355 16.539724 -22.917603 -16.698685 -22.427568 -7.556205 -58.835835 -30.670757 5.690525 -42.173485 -45.785538 12.677499 0.040073 -0.271519 0.830115 9.808117 17.575054 -14.134135 58.379482 28.969801 4.067314 29.634253 29.714815 5.257321 -0.451411 0.113266 -0.026746 +0.187218 1.618683 -0.002267 -2.605163 -34.879635 4.914313 3.046903 -4.656746 -12.478355 -7.420127 1.229704 29.546038 -0.711239 0.147343 -0.340485 0.819170 0.524886 0.997773 -8.520115 5.253216 -26.768766 -1.726469 0.054987 37.355255 -0.565195 0.036468 -0.038888 0.254604 -0.418922 0.410910 6.409304 -2.403704 7.782810 4.125042 -3.133983 9.743608 5.192228 -2.774892 11.148511 3.403871 9.677570 16.816675 -15.659340 15.222878 -23.277140 -19.632877 -21.240931 -7.260473 -58.621105 -27.510284 3.479827 -38.387852 -40.804810 9.153694 0.092385 -0.254987 0.851352 11.254871 16.041977 -13.623103 55.768978 26.235464 1.782423 24.367012 25.221102 3.116332 -0.426772 0.129361 0.013673 +0.194305 1.613997 0.001775 -2.288307 -32.851723 3.967691 2.703844 -5.153720 -12.850134 -7.953547 1.358947 31.270790 -0.698414 0.096963 -0.356549 0.842767 0.552246 1.014011 -9.148337 5.325193 -28.786930 -0.714273 -0.404600 42.586533 -0.586495 0.076122 -0.047146 0.252922 -0.472858 0.400619 6.646039 -2.618747 9.819848 4.734432 -3.355924 9.162924 5.695049 -2.914185 9.745563 2.512045 9.177427 17.574385 -15.744227 14.253150 -24.006432 -22.228968 -19.740435 -7.085320 -57.749424 -24.582052 1.439801 -33.931557 -37.110916 6.299410 0.149845 -0.256800 0.878182 11.863873 14.548391 -13.310349 53.104740 23.895857 0.100879 19.478428 20.854410 1.608147 -0.402387 0.146677 0.036676 +0.201263 1.610118 0.006086 -2.327027 -31.099403 2.870206 2.381796 -5.580511 -12.723948 -7.934176 1.325979 32.989853 -0.682956 0.036722 -0.358770 0.881691 0.605609 1.028350 -9.303290 5.486425 -30.532761 0.284049 -0.945813 47.793709 -0.612889 0.124015 -0.041279 0.267501 -0.512159 0.376640 7.379470 -2.905293 12.060617 5.309377 -3.435803 8.629048 5.778666 -2.915177 8.375629 1.540879 9.073153 18.691069 -15.092113 13.284627 -24.736008 -24.357878 -18.819170 -7.070393 -56.475105 -22.000605 -0.157597 -28.633747 -33.075798 3.665793 0.219429 -0.273426 0.905945 12.367572 13.094316 -12.963645 50.282692 21.702820 -1.278263 14.900525 17.145065 0.587470 -0.380792 0.167063 0.053415 +0.207709 1.604384 0.011014 -2.353167 -29.912111 2.007099 2.284309 -5.963962 -12.845187 -8.616246 1.596230 34.956253 -0.662806 0.018555 -0.351764 0.891663 0.608407 1.029204 -9.486059 5.699275 -32.877155 1.545682 -1.761310 53.238129 -0.618997 0.143367 -0.037511 0.258957 -0.522302 0.372144 8.280876 -3.290240 13.912273 5.570117 -3.449355 8.008027 5.474157 -2.846458 6.984489 0.930497 9.203594 19.336174 -14.435527 12.795671 -24.173891 -25.812794 -17.991150 -6.952791 -55.176247 -19.268736 -1.442510 -22.778328 -28.591728 1.386261 0.250855 -0.270604 0.914900 12.353775 11.632796 -12.436190 48.206047 19.478132 -2.272755 10.966945 13.694363 -0.035486 -0.363277 0.171000 0.063997 +0.212946 1.600902 0.015005 -2.232178 -28.943707 0.841761 2.092714 -6.125780 -12.356762 -9.351002 1.912997 36.142456 -0.640044 0.001634 -0.345737 0.884866 0.605499 1.014645 -9.142975 6.126957 -34.794361 2.505933 -2.422399 58.017353 -0.620042 0.155452 -0.031153 0.244268 -0.522474 0.369844 8.508903 -3.401925 15.757234 5.904156 -3.489964 7.582520 5.495264 -2.837539 5.880509 0.753470 9.200855 19.965719 -14.059690 12.595991 -23.599268 -26.705629 -17.333450 -6.753673 -53.189896 -16.783232 -2.378613 -17.928053 -24.805099 0.007808 0.264654 -0.270058 0.912420 12.203951 10.515841 -11.840201 45.933983 17.428593 -3.132921 6.885266 10.672898 -0.437023 -0.349242 0.179733 0.075674 +0.217617 1.598152 0.018463 -2.422344 -28.266836 -0.213680 2.384688 -6.169274 -11.725047 -10.250439 2.309789 37.179012 -0.627467 -0.005690 -0.338040 0.880146 0.605068 1.003250 -7.957209 6.755866 -36.335049 3.045662 -2.854320 61.451057 -0.617705 0.162732 -0.022512 0.238445 -0.515040 0.364330 8.803827 -3.590994 17.310053 6.248067 -3.532067 7.518818 5.570156 -2.840569 5.360534 0.445384 9.484275 20.050589 -13.868807 12.523541 -23.320898 -26.635658 -16.416365 -6.703548 -51.207039 -14.749820 -3.010349 -13.735137 -22.040749 -0.846930 0.269768 -0.274837 0.907647 11.624216 9.373830 -11.652646 43.596210 16.136440 -3.422815 3.609488 6.572214 -0.483453 -0.343426 0.186547 0.078617 +0.223200 1.596030 0.021819 -2.126665 -27.469275 -1.782652 1.672478 -6.275284 -10.474031 -10.499490 2.396171 37.662640 -0.616860 -0.006900 -0.331650 0.866167 0.589540 0.986558 -6.976762 7.222673 -37.534420 3.723891 -3.344597 64.431877 -0.612402 0.168087 -0.021989 0.226652 -0.508166 0.360377 8.921383 -3.723997 18.985485 6.473265 -3.605864 7.640119 5.492465 -2.842886 5.004388 0.089600 9.669833 19.598154 -13.567339 12.329703 -23.242409 -25.870852 -15.735442 -6.393273 -48.581055 -12.837318 -3.493513 -10.766448 -20.503654 -1.264581 0.274474 -0.274216 0.906299 10.560067 8.299950 -10.998531 41.179836 14.527845 -3.715440 1.601997 4.220675 -0.388568 -0.334070 0.192388 0.077697 +0.228173 1.594655 0.026274 -1.804563 -26.249460 -3.201733 1.116353 -6.438733 -9.327925 -11.025900 2.542485 38.049370 -0.599428 -0.002646 -0.316438 0.835593 0.562387 0.957062 -5.905601 7.413191 -38.674904 4.282881 -3.907092 66.977798 -0.596452 0.164580 -0.011475 0.207418 -0.485009 0.354803 8.979470 -4.108222 19.868603 6.578048 -3.876720 7.998407 5.497869 -3.045623 5.163596 0.085632 9.592309 18.688194 -13.585629 12.303694 -22.891462 -24.372791 -14.470881 -6.077526 -46.156403 -11.102891 -3.884527 -8.626238 -20.160210 -1.482221 0.262829 -0.275212 0.888902 8.526585 6.826194 -10.426429 39.768200 13.140475 -3.864841 0.097821 2.475348 -0.271209 -0.326864 0.197372 0.072966 +0.233035 1.594418 0.032546 -1.679562 -25.187477 -4.569133 0.649584 -6.550749 -7.753493 -11.571621 2.644225 38.114288 -0.592167 0.009912 -0.298127 0.798294 0.518295 0.923493 -4.838246 7.452619 -39.132042 5.525730 -4.913861 67.985703 -0.577268 0.164719 0.003418 0.182496 -0.458970 0.342713 9.485059 -4.720131 20.373091 6.649680 -4.108967 8.430401 5.298298 -3.126735 5.475948 -0.369367 9.422765 17.998899 -13.810413 12.008615 -22.386843 -22.625044 -13.237387 -5.419275 -44.513908 -9.355874 -4.310347 -5.695478 -20.559711 -1.872646 0.254915 -0.291378 0.884264 5.596475 5.260001 -9.416073 38.917995 11.203755 -4.222831 -1.260209 1.850868 -0.182855 -0.323587 0.211240 0.056097 +0.237539 1.594012 0.040973 -1.369306 -23.922575 -5.858514 -0.190446 -6.753480 -6.070091 -11.693400 2.536991 38.169586 -0.557929 0.006513 -0.270935 0.758018 0.478166 0.888748 -3.834711 7.193406 -38.980324 6.743868 -5.844870 67.739456 -0.553247 0.162813 0.015484 0.154361 -0.436303 0.327568 9.717808 -5.259652 20.589069 6.750438 -4.362711 8.765852 5.287862 -3.257515 5.691108 -0.638797 9.074290 16.874151 -13.886122 11.831811 -21.495819 -20.882048 -11.357428 -4.882822 -43.165756 -7.866342 -4.637118 -3.110697 -21.031797 -2.176273 0.252341 -0.285944 0.856838 2.777769 2.966269 -8.525648 37.869495 9.267689 -4.563337 -2.013566 1.638327 -0.114193 -0.302557 0.207712 0.050126 +0.241558 1.593870 0.049883 -1.137395 -22.644058 -7.118357 -1.082106 -6.991593 -4.388474 -11.620667 2.315094 38.246460 -0.532350 0.017920 -0.240523 0.717990 0.433369 0.850833 -2.455350 6.906177 -38.022877 7.700905 -6.476032 66.191360 -0.531317 0.145299 0.032092 0.125703 -0.401843 0.325653 10.066670 -5.855882 20.784899 6.810965 -4.592896 9.141994 5.112583 -3.339120 5.909271 -0.483722 8.501899 15.326027 -14.102504 11.753889 -20.816017 -19.446186 -8.925656 -4.786551 -40.987446 -6.825021 -4.739176 -1.446009 -21.974779 -2.326929 0.237352 -0.275945 0.833284 0.253488 0.020324 -8.014013 36.687878 7.660507 -4.946275 -3.033747 1.922114 -0.093912 -0.294967 0.197615 0.040467 +0.245325 1.594929 0.059176 -0.992732 -21.498859 -8.308155 -1.786819 -7.143144 -2.590635 -11.733212 2.163009 38.019768 -0.519135 0.048771 -0.215020 0.658370 0.361778 0.801031 -0.939768 6.676599 -36.849350 8.720360 -6.980497 63.667435 -0.492477 0.118114 0.043373 0.093474 -0.357561 0.316849 10.578384 -6.652063 20.656233 6.704151 -4.918283 9.545127 4.670345 -3.512694 6.248835 -0.448315 8.141277 13.875668 -14.265206 11.796906 -19.359398 -18.058964 -6.696718 -4.494890 -38.188206 -5.580476 -4.696716 -0.132041 -22.873039 -2.398786 0.206586 -0.267084 0.803434 -1.599140 -2.580541 -7.574400 34.919418 6.328996 -5.193836 -3.674332 2.580867 -0.105720 -0.292031 0.186116 0.016203 +0.249276 1.595459 0.068902 -0.752424 -21.160147 -8.835504 -2.347541 -7.187489 -1.492656 -12.235509 2.264957 37.955757 -0.503667 0.091914 -0.188338 0.594650 0.287194 0.732210 0.554019 6.769032 -36.269821 9.701848 -7.221381 60.671131 -0.444765 0.072507 0.053694 0.061815 -0.293378 0.316138 11.295139 -7.161820 19.812965 6.449951 -4.914819 9.812726 4.141172 -3.409309 6.670527 -0.860671 8.030176 12.236598 -13.923474 11.581095 -17.174906 -16.058844 -4.218153 -4.399998 -36.286671 -4.918536 -4.433996 1.328168 -22.950310 -2.469236 0.162052 -0.240848 0.756723 -2.953982 -5.473418 -7.301291 32.532204 5.066698 -5.341957 -4.687658 3.692283 -0.162840 -0.294537 0.161614 -0.002857 +0.253603 1.595984 0.078533 -0.353159 -20.863052 -9.418110 -3.112488 -7.195996 -0.515826 -13.038367 2.441380 37.689999 -0.484368 0.137768 -0.162546 0.551024 0.227875 0.671411 1.954434 6.754713 -35.222424 10.491559 -7.133895 56.510468 -0.412410 0.024120 0.058850 0.034093 -0.231056 0.333744 12.196878 -7.741111 18.814215 5.980557 -4.902232 10.083558 3.217443 -3.337538 7.153722 -1.428625 8.099026 10.856631 -13.217525 11.193367 -15.086435 -13.838768 -1.959012 -4.134923 -34.329456 -4.112505 -4.201969 3.111566 -23.294819 -2.650537 0.122979 -0.197190 0.715563 -4.444632 -7.952677 -6.987654 30.151312 4.023106 -5.303527 -5.204040 4.299339 -0.168203 -0.299081 0.128436 -0.007568 +0.257439 1.597667 0.087953 0.199103 -20.652004 -10.102246 -3.920231 -7.163254 0.413223 -13.601293 2.549612 37.388134 -0.479359 0.173017 -0.138925 0.506357 0.178985 0.635593 3.299662 6.747756 -33.865356 10.635223 -6.604719 52.185276 -0.377644 -0.004087 0.068466 0.020086 -0.180425 0.324222 12.686689 -8.104976 17.675224 5.507959 -4.951399 10.508345 2.472768 -3.361330 7.983298 -1.240639 8.130158 10.004673 -13.038573 11.434473 -13.516266 -12.176252 -0.193220 -4.035262 -31.750566 -3.487419 -3.874991 4.649142 -23.136652 -2.723243 0.083046 -0.198047 0.680857 -5.660131 -9.944618 -6.737962 27.548159 3.247669 -5.119371 -5.767383 4.830956 -0.187820 -0.303476 0.116337 -0.032524 +0.261253 1.602394 0.096647 0.776359 -20.831135 -11.147813 -4.575734 -6.881484 1.836203 -14.331759 2.726639 36.564987 -0.466982 0.169822 -0.129164 0.507544 0.193566 0.644823 4.656156 6.844425 -31.854317 10.507524 -5.794252 47.216835 -0.376880 -0.006475 0.070464 0.026580 -0.176622 0.324213 12.725271 -8.135523 16.651106 5.237010 -4.970528 11.373977 2.077701 -3.349981 9.513337 -1.168206 7.798651 9.570769 -13.808531 11.459855 -13.832242 -11.750551 0.569963 -4.130961 -28.771826 -3.039447 -3.619078 6.532375 -22.596296 -2.856187 0.070913 -0.202767 0.657517 -5.820331 -10.849893 -6.253922 23.705336 2.202748 -4.659867 -6.019753 5.628711 -0.206974 -0.299128 0.111720 -0.025288 +0.265102 1.605783 0.106312 1.509543 -20.546747 -11.941781 -5.426848 -6.834595 2.596623 -15.080201 2.882154 36.342155 -0.439381 0.155297 -0.110472 0.509255 0.223222 0.627560 5.388550 6.478948 -30.098579 10.345504 -5.109653 42.165100 -0.369353 -0.014280 0.083978 0.039218 -0.152108 0.316187 13.148519 -8.472137 15.162544 4.605397 -5.061192 11.928950 1.169580 -3.510801 10.782343 -1.216235 7.744538 9.140695 -13.484951 11.285516 -13.437781 -10.701100 1.506507 -3.970622 -25.873207 -2.326818 -3.344156 8.325457 -22.733202 -3.012520 0.062421 -0.194426 0.615338 -5.866334 -11.664648 -5.973337 20.448063 1.453238 -4.190457 -6.813042 6.217705 -0.259349 -0.294202 0.098407 -0.013473 +0.267712 1.607775 0.115012 2.507116 -20.461100 -12.670695 -6.273822 -6.805063 2.954646 -15.928895 3.128758 36.399998 -0.441079 0.147544 -0.116088 0.541775 0.265972 0.640284 6.203708 6.307174 -28.441244 9.863848 -4.286054 37.236328 -0.377128 -0.039560 0.084529 0.066705 -0.161141 0.329236 13.001389 -8.391287 13.406409 3.984993 -5.040024 12.439559 0.595321 -3.548923 12.278625 -1.044972 7.466175 9.051798 -13.864154 11.280949 -13.441063 -9.812380 2.114730 -3.989099 -22.634626 -2.013847 -2.904276 9.932492 -21.954315 -3.042250 0.063089 -0.161804 0.598456 -5.675417 -12.203488 -5.743667 17.233034 0.692959 -3.680873 -7.530044 6.283172 -0.283310 -0.306511 0.061624 0.001928 +0.269723 1.608621 0.123833 3.415229 -20.432686 -13.422240 -6.531923 -6.755730 3.241849 -17.213652 3.600445 36.568054 -0.435094 0.140483 -0.127908 0.578140 0.304986 0.676491 7.103052 6.117584 -26.149174 9.459355 -3.466158 31.442125 -0.394230 -0.055242 0.070113 0.084411 -0.186495 0.356628 12.805659 -8.272581 11.670363 3.390185 -5.033550 12.947404 0.031338 -3.579120 13.775165 -0.679220 7.280112 9.481005 -14.451628 11.549043 -13.697821 -8.897223 2.924107 -3.860555 -19.323626 -1.382806 -2.470083 10.623823 -22.644186 -3.106488 0.062249 -0.127346 0.587278 -5.800202 -12.774473 -5.730629 14.982851 0.286638 -3.362186 -8.968638 6.913739 -0.391247 -0.306559 0.030014 0.030572 +0.271582 1.608173 0.132732 4.178040 -20.401508 -13.989384 -6.728358 -6.666316 3.472641 -18.435589 4.057239 36.627659 -0.448988 0.137338 -0.134323 0.594408 0.332478 0.676378 8.150285 5.966251 -24.118416 8.591938 -2.674802 26.335051 -0.393951 -0.066596 0.071292 0.109303 -0.185483 0.349733 13.017832 -8.322638 10.027901 2.739346 -5.033140 13.218043 -0.787431 -3.596462 14.859611 -0.958070 7.543903 9.780329 -14.447697 11.533258 -13.625312 -7.711068 3.614034 -3.627153 -16.468252 -0.666111 -1.985993 10.841960 -22.122223 -2.931691 0.062805 -0.121886 0.579755 -5.805629 -13.148984 -5.854373 12.717903 0.189523 -3.025524 -10.356219 6.965841 -0.462074 -0.319137 0.016402 0.027700 +0.273219 1.608014 0.142551 4.946043 -20.508833 -14.940403 -6.958041 -6.559960 4.086045 -19.648905 4.556996 36.886921 -0.450139 0.123199 -0.135574 0.624946 0.364964 0.705129 9.229939 5.678442 -21.447493 7.385245 -1.915828 21.160921 -0.405331 -0.058375 0.070062 0.129015 -0.203491 0.345481 12.976206 -8.243620 8.728724 2.239534 -5.024657 13.625073 -1.424046 -3.578228 15.948986 -0.981530 7.313973 10.527342 -14.422009 11.311280 -13.748481 -6.871079 3.704405 -3.267263 -13.163970 0.135595 -1.440503 10.389285 -20.049818 -2.452715 0.082419 -0.124207 0.584684 -6.183993 -13.081244 -5.309736 10.162413 -0.671082 -2.564939 -10.699128 7.353082 -0.487681 -0.316043 0.008306 0.032860 +0.274287 1.605311 0.152947 5.703775 -20.256701 -15.519925 -7.196785 -6.545850 4.257950 -20.927525 5.093308 37.295616 -0.500497 0.140539 -0.153777 0.629641 0.370836 0.719907 10.193837 5.346374 -19.318495 5.769405 -1.305561 16.639442 -0.409684 -0.056625 0.063502 0.150821 -0.207580 0.335314 12.797185 -7.907486 6.964044 1.761632 -4.947074 13.856715 -1.827735 -3.432480 17.138826 -0.531857 6.803260 11.213492 -14.633528 11.101587 -14.468023 -6.005608 3.623890 -3.380766 -9.705785 -0.122615 -0.731042 8.637973 -16.405525 -1.742671 0.071445 -0.164527 0.611322 -6.471622 -13.350546 -4.653766 7.661216 -2.127180 -2.048133 -10.403763 7.991581 -0.476066 -0.341601 0.028269 0.006326 +0.274939 1.599870 0.162251 6.505923 -19.816099 -15.792547 -7.225764 -6.594086 4.017480 -22.743587 5.930781 38.025814 -0.524168 0.152893 -0.170459 0.622984 0.364369 0.725636 10.931604 5.140923 -18.166302 4.152296 -0.897252 13.644516 -0.412881 -0.051382 0.050218 0.154105 -0.213325 0.335602 12.312098 -7.396590 5.260131 1.402020 -4.795534 13.713645 -1.886873 -3.237499 17.828917 -0.183519 6.420335 12.238024 -14.572721 10.980402 -14.632392 -4.635122 3.152243 -3.321966 -7.274454 -0.893738 -0.275724 7.121032 -12.048379 -1.200795 0.059367 -0.186750 0.625442 -7.011807 -13.445061 -3.798611 5.645732 -3.947573 -1.640895 -10.607961 8.770006 -0.469666 -0.349905 0.047000 -0.002222 +0.275323 1.593639 0.172135 7.416900 -19.494242 -15.515124 -7.424826 -6.558841 3.373274 -24.341486 6.689623 38.389465 -0.518145 0.139356 -0.193565 0.633673 0.382409 0.753107 11.013094 4.972200 -17.876244 3.351829 -0.731983 11.951494 -0.425001 -0.057061 0.041721 0.149341 -0.245427 0.360881 11.158368 -6.683503 2.925661 1.058700 -4.698024 13.332677 -1.426903 -3.248408 18.659351 1.121216 5.317670 13.745837 -15.512632 11.424509 -14.613899 -3.754623 2.911975 -2.823275 -4.038575 -0.525182 0.325413 4.316759 -9.738640 -0.771512 0.044617 -0.172640 0.617361 -7.524969 -13.032667 -3.001089 3.638146 -5.289234 -1.164997 -10.563555 8.773877 -0.409337 -0.351947 0.042364 0.028888 +0.276952 1.586275 0.181558 7.794327 -19.313000 -15.174962 -7.297858 -6.537753 2.950397 -25.697102 7.403965 38.881237 -0.492120 0.129246 -0.203287 0.633125 0.386721 0.770137 11.229336 5.004048 -17.991112 2.874230 -0.663293 11.619857 -0.424290 -0.073812 0.033037 0.137936 -0.267916 0.386499 11.414920 -6.510054 1.247990 0.610726 -4.569388 12.911345 -1.834156 -3.198718 18.979137 1.936558 4.535670 14.316800 -16.555805 11.890673 -14.008277 -3.470664 2.829899 -2.519805 -0.606102 -0.176974 0.854123 2.670272 -8.343901 -0.529685 0.027446 -0.140962 0.587086 -8.204558 -12.842981 -2.446150 1.981864 -6.081917 -0.724465 -10.856956 9.108917 -0.407645 -0.340807 0.019659 0.062113 +0.279106 1.578729 0.187963 7.579402 -19.323778 -15.490830 -6.361194 -6.463493 3.213246 -27.150126 8.325544 39.662460 -0.443766 0.083952 -0.203008 0.640009 0.397184 0.786582 11.456369 5.230164 -18.043110 3.342711 -0.729393 12.733683 -0.435465 -0.061484 0.028717 0.117925 -0.311334 0.396568 12.139112 -6.629135 1.241002 0.523028 -4.460130 12.709960 -2.277727 -3.122156 18.574244 2.059748 4.103112 14.764845 -17.487783 12.194468 -13.765767 -2.983247 2.301095 -1.975176 1.602722 0.192268 1.049478 1.480643 -6.219151 -0.375063 0.059949 -0.111983 0.576696 -10.012108 -12.408910 -1.667515 1.691757 -6.802887 -0.690436 -11.437198 9.514336 -0.399485 -0.303349 0.006077 0.098906 +0.282560 1.572436 0.192023 6.619047 -19.515514 -16.170013 -5.049762 -6.438457 3.994563 -27.722490 8.970179 40.695061 -0.414075 0.060881 -0.196965 0.645113 0.382013 0.812867 12.207331 5.730344 -17.998344 3.794617 -0.809540 14.557367 -0.448982 -0.036615 0.027127 0.086324 -0.347967 0.407241 13.207967 -6.881624 2.611502 1.062378 -4.369789 12.824994 -2.233368 -2.979116 17.863140 1.805662 3.666406 14.254072 -18.466263 12.003782 -14.364811 -3.470206 1.145984 -1.504568 3.472540 0.628361 1.088927 1.137852 -3.970195 -0.355941 0.093388 -0.105908 0.595226 -11.256709 -11.627702 -0.682971 0.497248 -8.147976 -0.546913 -12.174492 9.683573 -0.324828 -0.273249 0.012949 0.120209 +0.284695 1.567122 0.194768 5.936457 -19.291494 -16.510584 -4.314813 -6.596530 4.166833 -27.716173 9.325768 41.968533 -0.394559 0.036430 -0.196829 0.638981 0.376217 0.808760 12.360656 6.107997 -18.496819 4.488555 -0.965436 16.414574 -0.452255 -0.026597 0.027710 0.070869 -0.368298 0.406355 13.689814 -7.071288 3.664774 1.392390 -4.324204 12.869937 -2.131558 -2.953768 17.327047 1.898479 3.659154 13.519573 -18.857964 12.177397 -14.835176 -3.913601 0.263147 -0.987425 5.348692 1.344064 1.236656 0.650495 -2.797549 -0.337061 0.115479 -0.094630 0.600837 -11.445036 -10.924508 -0.109233 -0.463606 -9.095818 -0.408058 -12.674798 9.739704 -0.280264 -0.255049 0.013882 0.129564 +0.285077 1.563287 0.196082 5.877979 -19.275055 -16.642439 -4.231072 -6.563033 3.977530 -27.651634 9.639736 42.940331 -0.356939 0.009156 -0.193326 0.623640 0.366510 0.792632 11.944232 6.402825 -19.390488 5.223431 -1.148553 18.239754 -0.453429 -0.008864 0.037452 0.041037 -0.377324 0.410700 13.449501 -6.987158 4.385611 1.450511 -4.202438 12.782251 -2.048116 -2.894012 16.811174 2.206767 3.451781 13.570646 -18.901318 12.359043 -14.885515 -4.097636 -0.487771 -0.104574 6.466041 2.751614 1.433196 0.520889 -2.941653 -0.287135 0.128721 -0.085205 0.596147 -11.562263 -9.780145 0.505087 -0.402581 -9.572149 -0.456800 -12.212416 9.738600 -0.208238 -0.232805 0.028218 0.151654 +0.284952 1.560614 0.195924 5.501058 -19.350945 -16.332731 -3.837939 -6.523833 3.333602 -27.364178 9.856051 43.908699 -0.339580 -0.002777 -0.172045 0.606557 0.354069 0.763989 11.635836 6.679457 -20.195469 6.269488 -1.349541 19.030222 -0.451436 0.013829 0.061649 0.020584 -0.352534 0.395421 13.789616 -6.851826 5.068429 1.554950 -3.860307 12.644027 -2.129804 -2.590947 16.209314 1.986827 3.537918 13.261209 -18.228060 12.075634 -15.078617 -3.935500 -1.102296 0.624516 6.667927 3.518052 1.607352 0.009885 -3.920501 -0.230239 0.140701 -0.109313 0.604410 -11.419358 -8.933211 1.035986 -0.023178 -10.230865 -0.564252 -11.882740 10.352825 -0.206273 -0.225986 0.058319 0.145742 +0.285161 1.560395 0.194657 5.674904 -19.822447 -16.197651 -4.145495 -6.207398 2.875183 -27.154366 9.923443 44.033684 -0.346207 -0.009245 -0.169459 0.605458 0.361128 0.730350 11.433462 6.782385 -20.254290 6.450199 -1.295807 18.598076 -0.457899 0.031789 0.079264 0.020780 -0.336233 0.386858 13.316810 -6.445817 5.878270 1.711433 -3.542288 12.712184 -1.883802 -2.277228 15.895347 1.282376 3.780632 12.934625 -17.386822 11.335402 -16.010757 -3.421887 -1.236075 1.136385 5.349965 4.078175 1.609992 -0.275495 -5.253672 -0.200125 0.157189 -0.128348 0.626756 -11.274018 -8.355663 1.170930 0.794309 -9.959766 -0.767251 -11.134212 10.553237 -0.177398 -0.235596 0.088233 0.139320 +0.284191 1.562047 0.192517 5.892371 -19.963974 -15.925244 -4.408271 -5.949177 2.377213 -27.043991 9.973926 43.967609 -0.374413 0.006644 -0.166641 0.606943 0.355931 0.732649 11.376003 6.714146 -19.852692 6.347617 -1.127597 17.053879 -0.450238 0.036726 0.080054 0.035612 -0.323032 0.366030 12.463628 -5.909529 6.296504 1.896662 -3.284564 12.838424 -1.374429 -2.048463 15.925504 0.894400 4.254560 12.223474 -16.760063 11.133621 -16.480106 -3.083818 -0.701103 1.128502 3.556656 3.962779 1.557954 -0.022438 -7.912034 -0.173670 0.155078 -0.149009 0.639582 -10.680950 -8.496921 0.640541 1.857337 -8.790471 -0.998634 -11.055090 10.886378 -0.275493 -0.249577 0.095522 0.111265 +0.283131 1.565357 0.188444 6.165240 -20.005770 -15.635146 -4.529255 -5.598358 1.993390 -27.011898 9.929109 43.251141 -0.386259 0.027305 -0.175337 0.592773 0.337767 0.726744 11.544346 6.617626 -19.253981 5.727003 -0.878350 15.151564 -0.439691 0.025442 0.068230 0.032976 -0.316646 0.370999 10.791121 -5.186068 6.735569 2.329285 -3.194785 13.007287 -0.173148 -1.983963 16.022852 0.677495 4.371609 11.771368 -16.974062 11.088167 -16.466160 -2.745077 0.247081 1.107432 0.963121 4.017067 1.385157 -0.171500 -12.009102 -0.173802 0.132109 -0.144011 0.630670 -10.462401 -8.816373 0.005802 3.416561 -7.173996 -1.271380 -11.018720 12.153153 -0.479636 -0.255963 0.094012 0.107897 +0.283341 1.568121 0.185266 6.289305 -19.746407 -14.884016 -4.902536 -5.495458 1.099663 -26.763027 9.758233 42.975407 -0.415889 0.059626 -0.185210 0.583701 0.324088 0.717177 11.583754 6.413103 -19.225742 5.001235 -0.703977 13.211629 -0.418526 -0.003871 0.055076 0.049219 -0.298876 0.367174 10.197975 -5.057222 6.696467 2.248960 -3.233037 12.986701 0.029809 -2.038419 16.098520 0.279523 4.780741 10.948934 -16.759459 11.051241 -15.972192 -2.211918 2.186041 0.787180 -2.457603 4.425470 0.989875 0.640502 -19.069113 -0.399566 0.102359 -0.130607 0.614572 -10.418701 -9.652276 -1.245412 5.683992 -4.246824 -1.551325 -10.165564 12.994842 -0.655952 -0.275387 0.073272 0.089560 +0.282819 1.571449 0.181685 6.217362 -19.357489 -14.474430 -4.849624 -5.331503 0.930427 -26.812569 9.613960 42.313641 -0.403308 0.078879 -0.146240 0.557345 0.301291 0.677366 12.044024 6.111474 -18.542292 3.879405 -0.524048 11.047929 -0.394174 -0.001332 0.083649 0.044970 -0.240997 0.340116 9.875425 -5.108322 7.570101 2.444498 -3.287029 12.839657 0.196800 -2.030328 15.280421 -0.938392 5.296642 10.237026 -16.154505 10.578448 -14.960071 -1.530023 3.556155 0.491242 -7.524105 4.169093 0.007737 1.661104 -24.897514 -0.924328 0.090254 -0.158742 0.591527 -10.930408 -10.264109 -2.102443 8.866497 -2.155239 -2.066560 -9.462255 14.177317 -0.841838 -0.276961 0.084889 0.064382 +0.281453 1.574790 0.178881 6.438879 -18.983433 -13.634878 -4.996562 -5.069914 0.448505 -26.976662 9.485672 41.312210 -0.422910 0.093854 -0.131487 0.555352 0.289601 0.655290 12.217135 5.817385 -18.419966 2.987233 -0.421200 9.006659 -0.382674 0.009685 0.098585 0.053556 -0.210113 0.311102 9.557613 -4.999937 7.469336 2.257371 -3.230847 12.454625 0.070070 -1.940069 14.706028 -2.111923 5.587919 10.418703 -14.805476 9.686121 -14.442270 -0.763843 4.530457 0.527368 -12.203588 4.299384 -0.972285 1.466293 -30.320681 -1.396747 0.101831 -0.185206 0.606704 -10.523526 -10.248473 -2.707335 11.884771 -0.730212 -2.555654 -8.184539 15.410304 -0.957671 -0.289411 0.099144 0.033561 +0.279876 1.577574 0.175972 6.590900 -18.473894 -13.192081 -4.916700 -4.718124 0.624047 -27.230591 9.335514 40.014912 -0.463780 0.120630 -0.126881 0.559995 0.275832 0.629370 12.542315 5.505054 -17.914700 1.989046 -0.353302 7.205283 -0.378806 0.028358 0.094119 0.070591 -0.179430 0.281900 9.933933 -5.209037 7.816594 1.871777 -3.203335 12.190755 -0.783658 -1.798967 14.023971 -4.328123 6.556165 10.329533 -12.491396 8.176528 -14.687619 0.190274 5.511032 0.480901 -17.630054 4.033924 -2.144210 1.617397 -34.709877 -2.087683 0.127531 -0.214165 0.647752 -9.684559 -10.317213 -3.567543 15.014855 0.938921 -3.019521 -6.052627 15.941678 -0.893611 -0.301818 0.122427 -0.007204 +0.279293 1.579559 0.172873 6.486798 -17.915457 -12.626208 -4.511978 -4.278030 0.804780 -28.024992 9.420947 38.596401 -0.489453 0.129820 -0.129154 0.568080 0.276546 0.608589 12.735289 5.294944 -17.750332 1.437603 -0.335111 5.804255 -0.367318 0.039235 0.085673 0.091633 -0.162829 0.251417 11.098965 -5.663876 8.365790 1.353060 -3.084488 11.893389 -2.159447 -1.653312 13.226781 -6.287505 7.422965 9.465563 -10.485162 6.895879 -15.016730 0.474856 6.809224 0.156094 -21.475296 3.574103 -2.908965 -1.135661 -38.719398 -1.769933 0.151326 -0.214316 0.661112 -8.335995 -10.673432 -4.835954 18.136326 2.821139 -3.338707 -3.690794 15.674169 -0.742449 -0.306081 0.125532 -0.031618 +0.278208 1.580633 0.169153 6.496053 -16.799917 -11.761994 -4.164052 -3.978837 0.356744 -28.888428 9.588257 37.660709 -0.507119 0.134476 -0.129004 0.585881 0.290950 0.600550 12.797791 5.124864 -18.132662 0.542473 -0.328995 4.499585 -0.364432 0.034018 0.084952 0.113231 -0.155069 0.239447 11.851890 -5.916537 8.227574 0.933982 -2.980747 11.454706 -3.032334 -1.553424 12.648370 -7.550700 7.497711 8.998584 -9.774533 5.935246 -15.131180 -0.501927 8.176579 -0.420931 -24.914446 3.240446 -3.683295 -4.279117 -43.584110 -1.103521 0.167474 -0.206179 0.665795 -6.558388 -10.994789 -6.181376 21.090391 4.318823 -3.659433 -1.781320 14.683353 -0.619247 -0.315897 0.113235 -0.041881 +0.276511 1.579899 0.165201 6.606724 -15.515498 -10.761499 -3.912666 -3.663511 -0.209434 -29.450039 9.703647 36.938599 -0.506894 0.146098 -0.118172 0.594446 0.297968 0.570985 12.580979 5.085282 -19.097672 -0.048135 -0.347027 3.694326 -0.359252 0.020107 0.094678 0.123812 -0.125763 0.240416 12.546407 -6.086960 7.963864 0.383093 -2.807762 10.893657 -4.044005 -1.429007 11.900754 -8.525380 7.479922 8.555558 -8.612842 4.936915 -14.725146 -1.606824 9.750141 -0.882209 -28.435911 3.098134 -4.524391 -8.374520 -49.044765 0.252092 0.171887 -0.186432 0.657627 -4.515014 -11.329265 -7.604988 24.580059 5.540813 -4.107621 -0.214454 13.408257 -0.554438 -0.327152 0.098074 -0.043467 +0.275091 1.579299 0.160618 6.846951 -13.412206 -9.996031 -4.205574 -3.688550 -0.661251 -29.383148 9.554474 36.704128 -0.507193 0.167680 -0.100546 0.564406 0.262201 0.536705 11.579796 4.791521 -20.036314 -0.129270 -0.401878 2.908229 -0.329231 0.016390 0.100761 0.116940 -0.087856 0.215536 12.808699 -6.272559 7.860372 0.026687 -2.846469 10.349310 -4.609389 -1.489342 11.069439 -9.777775 7.490836 8.138124 -7.942896 4.006900 -13.645101 -3.247888 10.604901 -1.366510 -31.971022 2.656558 -5.334971 -14.056494 -52.754684 2.650846 0.162624 -0.198499 0.638849 -2.040987 -11.456670 -8.653467 27.142281 6.240992 -4.321498 2.422256 12.260751 -0.365779 -0.323963 0.101538 -0.066962 +0.273588 1.577826 0.154961 6.788787 -11.134368 -9.614805 -4.261551 -3.814380 -0.808450 -29.310335 9.510910 36.974522 -0.521859 0.191249 -0.089561 0.559006 0.239795 0.532668 10.937528 4.572268 -20.635897 -0.337695 -0.445414 2.217181 -0.320929 0.033838 0.105267 0.112757 -0.065382 0.201044 12.753426 -6.405128 8.169694 0.008934 -2.971954 10.075360 -4.622120 -1.569485 10.458385 -11.021444 7.419281 7.895995 -7.173454 2.898945 -13.991714 -5.389252 10.770049 -1.971978 -35.751251 2.154402 -6.323444 -20.101421 -55.027874 5.328976 0.164766 -0.227667 0.653576 0.690645 -10.992711 -9.553598 29.057413 6.800388 -4.482231 4.684982 10.646732 -0.206501 -0.327411 0.125222 -0.086834 +0.272566 1.575711 0.149385 6.907387 -8.808911 -9.017999 -4.747157 -3.956686 -1.112989 -28.830578 9.288108 37.203205 -0.538541 0.209651 -0.081172 0.552664 0.231140 0.507164 9.714401 4.300671 -21.690802 -0.050915 -0.481154 1.758110 -0.307726 0.027059 0.108730 0.124085 -0.035511 0.183618 12.783366 -6.612916 7.836720 -0.255752 -3.141009 9.813004 -4.893421 -1.766727 10.150003 -11.858894 7.526943 7.324223 -6.254012 2.068009 -13.801638 -8.428396 10.003999 -2.483597 -38.703457 2.293346 -7.564543 -24.192644 -55.855354 6.923777 0.164581 -0.233411 0.651674 4.469385 -9.501974 -10.452719 30.442530 7.312328 -4.552038 6.268474 8.732052 -0.183151 -0.337578 0.123945 -0.109508 +0.271278 1.573161 0.142743 6.775599 -6.507912 -8.862823 -5.171206 -4.089110 -0.955636 -27.720991 8.876371 37.626236 -0.534073 0.188696 -0.087676 0.576613 0.266977 0.499557 8.937410 4.127944 -22.383862 -0.121529 -0.483163 1.646141 -0.317544 0.032691 0.104554 0.141972 -0.041325 0.181035 13.116732 -6.870962 8.310552 -0.555759 -3.112181 9.578821 -5.486259 -1.838255 9.563967 -12.046547 7.589824 7.081832 -4.907162 1.466473 -14.496325 -11.639562 8.751147 -3.462270 -40.203728 1.616122 -8.190225 -28.786757 -54.461182 8.540463 0.188206 -0.211507 0.652425 7.835373 -8.014629 -11.214699 32.668186 7.632522 -4.768003 7.094429 6.933567 -0.238031 -0.336093 0.115624 -0.096245 +0.268115 1.570560 0.135892 6.633000 -3.379308 -8.963644 -5.359104 -4.458471 -0.615360 -26.219837 8.311506 38.355980 -0.506872 0.168480 -0.082647 0.590854 0.280681 0.504045 7.685139 3.786134 -22.846666 0.119188 -0.486873 1.514526 -0.322953 0.044360 0.106106 0.138804 -0.051946 0.183437 12.830571 -6.839167 9.189353 -0.610072 -2.988507 9.075729 -5.569285 -1.865801 8.469414 -11.673670 6.729028 7.838302 -3.860596 0.691865 -14.111486 -15.080119 6.766972 -4.574650 -40.491974 0.356427 -8.174877 -32.617580 -51.536537 9.515482 0.209653 -0.193560 0.646073 11.314700 -6.320184 -11.282820 35.187767 6.961077 -5.255075 6.964103 5.145133 -0.332704 -0.320729 0.107729 -0.076074 +0.265066 1.567788 0.128846 6.195649 0.476792 -9.144032 -5.695021 -5.174690 -0.457100 -23.786228 7.350578 39.803192 -0.489150 0.136968 -0.103485 0.598728 0.284289 0.520162 6.428799 3.452326 -23.384386 -0.012477 -0.509746 1.821608 -0.340038 0.060420 0.093679 0.120103 -0.100616 0.200337 12.191336 -6.764834 10.340174 -0.289334 -3.037114 8.305818 -4.977554 -1.994376 6.976995 -10.789354 5.058816 9.340853 -3.860896 0.062813 -14.103300 -18.551046 4.631237 -5.555517 -41.698776 -1.277525 -8.032069 -33.229149 -48.064198 8.790215 0.235023 -0.176267 0.662087 13.340326 -4.712874 -10.690874 38.376675 6.124826 -5.813799 6.899889 3.997362 -0.349236 -0.303472 0.111973 -0.044822 +0.261129 1.565032 0.121690 5.889039 4.027993 -9.381686 -6.177385 -5.733287 -0.360138 -21.145191 6.346475 41.281322 -0.480794 0.095810 -0.136325 0.635769 0.326584 0.544057 4.886581 3.243263 -24.132982 0.126773 -0.492946 3.124017 -0.375925 0.076931 0.074487 0.122696 -0.157869 0.226612 11.215116 -6.394166 11.346626 0.031668 -2.962643 7.721260 -4.228791 -2.005972 5.892842 -9.931376 3.643891 10.932244 -3.249624 -0.614939 -15.026593 -21.152819 3.001294 -6.619433 -43.263359 -3.333680 -7.552732 -34.165466 -44.198189 8.164322 0.272759 -0.146938 0.689683 15.491241 -3.360891 -10.549704 41.642200 5.898207 -6.354410 6.035789 3.544833 -0.377619 -0.293818 0.111690 -0.003321 +0.256824 1.563407 0.114181 5.790192 7.748963 -9.290643 -6.843565 -6.347860 -0.874907 -18.338005 5.277672 42.960579 -0.489328 0.076215 -0.158331 0.639729 0.330039 0.571174 2.649520 2.890831 -25.126398 0.867230 -0.512140 4.613028 -0.392325 0.101840 0.069029 0.113425 -0.197171 0.230841 9.274328 -5.609239 11.931591 0.496533 -2.974296 7.063812 -2.776736 -2.062853 4.870038 -8.351538 1.289216 12.945567 -3.259971 -1.269555 -15.253655 -23.412178 1.997335 -7.498384 -45.566925 -5.403112 -6.880269 -35.154152 -40.903614 7.734395 0.283502 -0.174639 0.719710 16.905842 -1.801016 -10.186190 44.908562 6.075357 -6.669163 5.625559 3.377562 -0.373105 -0.292405 0.140568 0.005154 +0.252674 1.563301 0.104139 5.444503 11.091393 -9.337664 -7.292743 -6.890935 -1.679170 -15.633410 4.239280 44.620853 -0.524525 0.069692 -0.180778 0.666439 0.346769 0.626465 0.377726 2.727043 -26.340738 2.068004 -0.556169 6.900183 -0.418630 0.133603 0.057653 0.124755 -0.241335 0.229123 7.783958 -4.982745 12.536944 1.037389 -3.030974 6.807705 -1.400781 -2.109975 4.427903 -7.269387 -0.934046 14.430367 -3.465406 -2.017185 -16.500044 -25.518169 0.690638 -8.085207 -47.981094 -7.350722 -6.314770 -36.430801 -39.605522 7.813423 0.300733 -0.217047 0.768918 18.112000 0.683629 -9.987900 47.187668 7.177171 -6.534894 5.841741 3.755847 -0.366709 -0.301735 0.171345 -0.001595 +0.247573 1.564624 0.093981 5.140917 14.700566 -9.257553 -7.617283 -7.396221 -2.665056 -12.831518 3.093703 45.989662 -0.561137 0.056750 -0.205102 0.685723 0.363207 0.669600 -2.078820 2.491378 -27.523489 3.325748 -0.667084 9.491775 -0.435423 0.166990 0.052831 0.137159 -0.282085 0.215167 6.187521 -4.564235 12.958233 1.452019 -3.341072 6.580101 -0.106627 -2.414554 4.067213 -6.466203 -3.041080 15.888473 -3.680738 -2.808351 -17.588573 -27.122450 -0.889863 -7.959660 -50.138367 -8.858303 -5.839655 -38.189217 -39.620178 8.375214 0.317559 -0.266440 0.812265 19.045721 4.053458 -9.486546 49.144295 8.513583 -6.285137 6.160067 5.144678 -0.403840 -0.312525 0.207287 -0.012288 +0.242528 1.565489 0.085117 4.674037 17.894131 -9.122764 -7.568373 -7.568077 -3.641251 -10.455710 2.214752 46.878716 -0.568833 0.022832 -0.221989 0.727509 0.419270 0.704310 -4.612614 2.401094 -28.861809 5.347660 -0.924410 12.816666 -0.461351 0.185382 0.046128 0.164893 -0.319433 0.213177 5.360588 -4.290269 12.378952 1.442705 -3.491658 6.765563 0.463507 -2.665859 4.571858 -5.536810 -4.904373 16.657133 -3.049927 -3.569868 -18.673468 -27.262775 -2.064705 -7.615417 -52.433380 -10.924396 -5.001574 -41.596893 -41.422283 10.258605 0.345629 -0.269561 0.830347 18.869480 7.188067 -9.061037 51.782959 10.265279 -6.012962 6.841997 8.344935 -0.568907 -0.315193 0.208405 0.002023 +0.237501 1.568948 0.076573 4.352764 20.701208 -9.514061 -7.624806 -7.507493 -3.916563 -8.307099 1.435458 47.252907 -0.589037 -0.003764 -0.241422 0.780072 0.490548 0.729637 -7.280618 2.358363 -29.561993 7.891869 -1.388176 16.730862 -0.491534 0.211425 0.040546 0.206172 -0.341295 0.207593 4.675524 -3.995425 12.212840 1.493172 -3.606462 7.209406 0.835801 -2.859912 5.356023 -5.429156 -6.063474 17.707420 -1.559872 -4.580997 -20.432966 -27.186787 -4.661180 -7.050848 -54.059475 -13.224689 -4.012879 -44.873283 -43.280090 12.223423 0.376182 -0.283724 0.857334 19.185154 11.218606 -8.611263 52.720711 12.296453 -5.495497 7.627233 11.524870 -0.680140 -0.326706 0.222715 0.012090 +0.230763 1.573960 0.067367 3.902190 23.131449 -9.817772 -7.091005 -7.263295 -4.586116 -6.470473 0.922654 47.406464 -0.599875 -0.023277 -0.252923 0.834138 0.569557 0.739246 -9.796522 2.663103 -30.255285 11.229040 -2.094781 20.610754 -0.515379 0.210846 0.036121 0.254810 -0.345627 0.209716 4.079899 -3.611621 11.961162 1.617828 -3.604820 7.787615 1.232804 -2.995565 6.384168 -5.370366 -7.014481 18.022215 -0.329715 -5.486229 -21.524443 -26.786692 -7.744493 -6.469048 -54.614410 -15.926503 -2.720302 -48.847843 -46.338074 15.293496 0.394347 -0.268519 0.855962 19.520689 15.817826 -8.554372 52.306324 15.267834 -4.242362 8.479193 13.175737 -0.634887 -0.342827 0.207970 0.029750 +0.223425 1.581554 0.057388 3.340364 24.986353 -10.399273 -6.553118 -6.700752 -4.828434 -4.284128 0.304712 46.842049 -0.611254 -0.041784 -0.260557 0.896812 0.650461 0.749104 -11.787798 3.423436 -30.931515 14.524968 -3.007082 24.950720 -0.535138 0.217434 0.034414 0.308262 -0.345590 0.203098 4.307357 -3.246231 11.763131 1.693547 -3.355433 8.567758 1.115697 -2.875676 7.686456 -6.087947 -7.601295 18.446281 1.503665 -6.731266 -22.879425 -25.852041 -11.266815 -5.984095 -54.646667 -19.303923 -1.083377 -51.974373 -50.511169 18.938475 0.426271 -0.253215 0.858091 19.293089 20.227831 -8.606131 51.271729 18.473427 -3.167467 8.610084 15.805938 -0.696701 -0.355118 0.193019 0.043103 +0.214875 1.591180 0.048862 2.574727 26.411364 -11.249447 -5.704976 -5.767097 -4.465809 -2.047333 -0.226933 45.554066 -0.629889 -0.041481 -0.267808 0.928224 0.700160 0.729131 -13.002821 4.720261 -31.158447 17.416796 -3.973168 29.132910 -0.546667 0.215335 0.031523 0.347864 -0.326138 0.198373 4.755208 -2.895724 11.626527 1.745035 -3.077947 9.427836 0.749930 -2.676699 9.038092 -6.702932 -8.187261 18.972996 3.247222 -7.902697 -23.919952 -24.892681 -14.792261 -5.269094 -53.935734 -22.475761 0.428190 -56.237373 -56.129036 24.449215 0.439075 -0.247233 0.860718 18.506235 24.502462 -8.734241 49.908413 21.849981 -2.127067 8.686869 18.662460 -0.728739 -0.373203 0.189986 0.043915 +0.207146 1.602595 0.041104 1.084065 27.862707 -12.237287 -4.531384 -4.959218 -3.949564 0.621185 -1.050939 43.435452 -0.648016 -0.027089 -0.265759 0.939690 0.720619 0.711155 -13.544262 6.035306 -31.078773 20.601147 -5.201355 32.541603 -0.543211 0.211734 0.033525 0.373458 -0.297999 0.187902 6.174717 -2.997992 11.238691 1.889531 -2.923465 10.237421 0.114070 -2.531337 10.361115 -7.205350 -8.818517 19.124388 4.377102 -8.996162 -24.557495 -24.104315 -18.352659 -4.705760 -52.976940 -25.857395 2.054389 -57.892948 -61.063164 28.683056 0.436944 -0.255652 0.855481 16.802036 27.978418 -9.021023 48.240959 24.988777 -1.289507 9.076638 22.529875 -0.701426 -0.388458 0.192115 0.033908 +0.199735 1.612867 0.034670 -0.157658 29.672157 -12.791768 -3.645278 -4.357064 -3.632952 3.092369 -1.792673 41.157894 -0.685380 0.008217 -0.269988 0.936455 0.717409 0.690593 -14.261652 6.967924 -31.090961 23.464724 -6.652688 35.937088 -0.528016 0.192493 0.031125 0.397189 -0.264269 0.176891 7.117581 -3.085521 10.249029 1.881544 -2.924058 11.022483 -0.383868 -2.526937 11.900953 -6.970782 -9.615442 18.835859 5.266111 -9.773144 -24.735203 -22.032505 -21.499079 -4.712995 -52.627575 -29.853632 4.281100 -56.841473 -64.996628 30.823324 0.415342 -0.263186 0.850021 13.979361 30.389048 -9.677240 46.967880 28.108070 -0.523525 8.869577 27.491089 -0.840880 -0.415441 0.188452 0.007703 +0.192704 1.623655 0.029248 -0.737231 31.760529 -12.884562 -3.408679 -4.051496 -3.396710 4.978698 -2.371037 38.835121 -0.706923 0.073935 -0.256831 0.914537 0.678078 0.667553 -15.058596 7.311622 -30.568090 25.421272 -8.025341 38.849129 -0.507950 0.165078 0.029166 0.395852 -0.206473 0.188079 7.443910 -3.043360 9.057798 1.799011 -2.997092 11.672008 -0.711227 -2.571478 13.298458 -6.665573 -10.362669 18.288492 6.055379 -10.549313 -24.359921 -19.468855 -24.336796 -4.853502 -52.497917 -34.061764 6.764423 -51.246044 -68.780975 29.489822 0.370312 -0.269720 0.836988 11.452595 31.989756 -10.172949 45.385487 30.810452 0.092491 8.423731 32.605316 -1.004074 -0.435630 0.186024 -0.016336 +0.184892 1.634738 0.024264 -1.132650 33.618259 -12.843373 -3.003345 -3.686340 -2.951400 6.131579 -2.600552 35.830009 -0.709885 0.099541 -0.249105 0.891214 0.668219 0.617282 -15.390014 7.580908 -29.836866 26.334887 -9.080176 41.527023 -0.483952 0.135351 0.037219 0.401409 -0.156557 0.187774 7.727562 -2.955788 7.902610 1.562106 -2.933486 12.376259 -1.237518 -2.519610 14.772305 -6.146260 -11.046305 17.343742 7.078821 -11.191075 -24.219412 -16.798454 -26.725185 -5.159769 -51.688663 -38.204365 8.997954 -40.547810 -72.454163 23.877092 0.336436 -0.258022 0.802829 9.020132 33.083729 -10.574512 43.823509 33.360817 0.529452 6.874249 38.518837 -1.641460 -0.452358 0.175818 -0.024151 +0.178182 1.645499 0.019871 -1.669462 35.966488 -12.863760 -2.559472 -3.487328 -2.332265 7.178030 -2.834816 32.471252 -0.729256 0.151028 -0.219987 0.872741 0.654954 0.570624 -15.867421 7.378201 -28.716722 27.359146 -10.412948 44.096806 -0.458428 0.106448 0.054889 0.420764 -0.077641 0.173900 8.401584 -3.092587 6.181583 1.264567 -2.992383 13.212544 -1.919180 -2.575034 16.747463 -5.791980 -11.739221 16.280205 8.157859 -12.109204 -24.015450 -13.222481 -28.496101 -6.037446 -50.733482 -42.651997 11.294716 -21.121883 -74.588760 10.186108 0.298478 -0.274024 0.774145 5.780999 33.472885 -11.349483 42.253662 36.111099 1.044659 2.876709 43.645061 -3.439074 -0.480661 0.169581 -0.058964 +0.171189 1.654921 0.015604 -2.363856 37.232601 -12.555926 -1.380674 -3.145419 -2.132905 7.019211 -2.561817 29.061306 -0.742413 0.212739 -0.198082 0.839089 0.621893 0.506912 -15.523519 7.535924 -28.395220 27.470814 -11.503848 47.098637 -0.416069 0.047610 0.066194 0.429589 0.000715 0.174507 9.755501 -3.024456 4.374388 0.919355 -2.623699 13.767676 -2.787028 -2.188471 18.505575 -5.478118 -12.435144 14.685334 8.432644 -13.261312 -22.895044 -9.676352 -29.617075 -6.837114 -50.237061 -46.967857 13.555501 4.105612 -73.626404 -8.817780 0.243427 -0.254196 0.719400 2.239951 33.225170 -11.838243 40.831387 38.575310 1.665223 -2.832540 49.904495 -6.576490 -0.509175 0.137014 -0.081751 +0.164259 1.663350 0.011999 -2.609052 38.426685 -12.076783 -0.686929 -2.750493 -1.495627 7.254966 -2.379292 25.025646 -0.774158 0.270261 -0.177352 0.809937 0.595219 0.464178 -15.145264 7.698559 -27.491161 26.864889 -12.157074 49.959770 -0.376674 0.006841 0.076937 0.449703 0.068978 0.154006 10.270957 -2.727148 2.926963 0.814813 -2.322742 14.248929 -3.079625 -1.842541 20.066139 -5.208372 -13.197989 13.085619 8.233158 -14.254351 -22.296799 -6.165112 -30.107103 -7.931626 -49.386536 -51.513702 15.947107 21.838621 -69.800568 -20.796450 0.196388 -0.268825 0.680208 -1.146971 32.630714 -12.537682 37.888630 41.263901 2.404889 -8.778207 53.905449 -9.855884 -0.538860 0.121953 -0.123116 +0.158235 1.669394 0.009573 -2.458194 39.096638 -11.085819 -0.113667 -2.426255 -1.043060 6.853725 -2.088103 21.353891 -0.770172 0.309080 -0.140322 0.811535 0.612144 0.411920 -14.523732 7.664659 -26.699749 25.181278 -12.337781 53.073620 -0.342226 -0.054531 0.096298 0.486188 0.147364 0.144993 10.486082 -2.210652 1.133899 0.656766 -1.770930 14.519561 -3.172300 -1.319613 21.613180 -4.837639 -13.836258 11.312216 8.424127 -15.531708 -21.024355 -2.186809 -29.764450 -9.434537 -49.840656 -55.719635 18.427782 30.441025 -62.633739 -24.320833 0.162637 -0.231475 0.604523 -4.162244 31.209024 -12.945097 34.833958 43.420773 3.052536 -16.312780 57.293392 -14.431362 -0.562502 0.061849 -0.133599 +0.152634 1.673978 0.007720 -1.931368 39.525993 -9.763933 0.107907 -2.125005 -0.672897 6.383749 -1.817671 18.206617 -0.767250 0.329273 -0.107957 0.810795 0.633394 0.368567 -13.959478 7.614527 -25.785774 23.240271 -12.039417 55.526455 -0.309201 -0.111123 0.111688 0.525504 0.204671 0.123270 10.172791 -1.773887 -0.443471 0.409661 -1.348616 14.542229 -3.182944 -0.971675 22.748981 -4.490136 -14.192956 9.860512 7.893536 -16.344986 -19.524393 1.747664 -28.534069 -10.507598 -50.045864 -59.156509 20.711250 36.987701 -57.076359 -26.331371 0.139308 -0.198371 0.531335 -6.831972 29.629082 -13.198753 32.790993 45.884430 4.096642 -25.357063 58.677620 -19.937016 -0.579806 -0.000013 -0.148199 +0.147527 1.676851 0.005905 -1.855489 39.993675 -8.534652 0.581855 -1.898165 -0.609261 6.072489 -1.618398 15.414845 -0.787126 0.387814 -0.098280 0.805649 0.638670 0.320845 -13.009922 7.475474 -24.452150 21.262867 -11.278568 56.305237 -0.269699 -0.196729 0.111687 0.563239 0.272173 0.132773 10.211312 -1.471810 -2.060840 0.113046 -1.017849 14.419915 -3.395011 -0.697476 23.777367 -3.498134 -14.639064 7.884964 7.236074 -16.955624 -17.916395 5.028893 -26.834433 -11.602651 -50.155472 -62.959286 23.695637 40.778461 -52.011105 -26.312860 0.078547 -0.141134 0.453787 -9.251797 27.824507 -13.586556 31.788395 48.672009 5.606067 -33.552673 58.065155 -24.539715 -0.616679 -0.071504 -0.157200 +0.142485 1.678552 0.003156 -1.287819 40.650135 -7.109170 0.558041 -1.741863 -0.675211 5.791753 -1.464033 12.952365 -0.790623 0.451500 -0.069028 0.776776 0.617841 0.259159 -12.303564 7.058856 -22.429678 18.755112 -9.946091 55.874199 -0.230309 -0.259377 0.123348 0.577013 0.361300 0.138715 9.836038 -1.238977 -3.412211 -0.246978 -0.797325 14.255778 -3.648972 -0.426101 24.427528 -2.777560 -14.911052 6.580720 7.138536 -17.656530 -16.478281 8.136375 -25.788128 -12.451897 -50.526089 -66.041878 26.097467 42.857132 -46.487469 -25.181768 0.015304 -0.119410 0.386420 -11.358751 26.511700 -13.646576 30.249725 50.779602 6.367391 -40.160397 55.919910 -27.509962 -0.642141 -0.108385 -0.173704 +0.137230 1.678872 0.001626 -0.229136 40.975327 -5.397136 0.326516 -1.540542 -0.694824 5.043427 -1.231175 10.463954 -0.812217 0.517534 -0.055132 0.754188 0.581387 0.209459 -11.642634 6.754961 -19.837704 16.044327 -8.091333 53.924271 -0.196655 -0.308766 0.122851 0.586104 0.429061 0.141518 8.833982 -0.679342 -4.589886 -0.478321 -0.393616 14.082074 -3.582697 0.051444 24.868689 -2.445581 -15.071013 5.926495 7.649890 -18.425760 -15.514771 11.560550 -24.841127 -13.458413 -52.238525 -69.530991 29.758286 43.397720 -39.980606 -22.952154 -0.025506 -0.094189 0.352894 -12.530213 25.207895 -13.675694 28.082966 52.878036 6.931263 -42.668774 53.344749 -27.421837 -0.665601 -0.138593 -0.200275 +0.131548 1.677657 -0.000174 0.959566 41.104847 -3.594487 0.155735 -1.279684 -0.811514 4.171115 -0.979924 7.751913 -0.824138 0.572533 -0.040398 0.721922 0.552391 0.146740 -11.233198 6.256358 -17.111258 13.639364 -6.406019 50.908218 -0.154620 -0.365771 0.127401 0.596922 0.499197 0.139764 8.097175 -0.219603 -5.654725 -0.871037 0.053406 13.916703 -3.923025 0.583317 25.213308 -2.116305 -15.147931 4.912374 7.587058 -19.085005 -14.261256 14.231448 -24.117250 -14.527091 -51.549965 -72.897079 31.825752 42.341152 -33.660423 -20.002796 -0.074823 -0.067302 0.297338 -13.124614 24.301594 -13.621152 25.465263 55.125561 7.022866 -44.859642 50.077713 -26.820478 -0.687026 -0.172790 -0.220541 +0.126524 1.674780 -0.001452 1.830665 40.887085 -2.090642 0.203341 -0.954765 -0.745023 3.412243 -0.753820 4.873243 -0.814740 0.600247 -0.016794 0.684655 0.520836 0.093087 -10.378187 5.538208 -13.516997 10.813956 -4.532704 46.161552 -0.120794 -0.398017 0.143334 0.589635 0.552605 0.131268 7.501117 0.185551 -6.643847 -1.183736 0.461419 13.700514 -4.161107 1.097803 25.225357 -2.021372 -15.178529 4.577046 7.414250 -19.561419 -13.088565 16.812534 -23.516056 -15.387744 -48.947865 -75.615837 32.031956 40.235561 -27.932566 -17.082621 -0.107736 -0.059401 0.252675 -13.820351 23.767580 -13.328532 21.956116 56.987392 6.513611 -45.908699 47.053776 -25.580280 -0.694409 -0.188261 -0.233888 +0.121108 1.670923 -0.001388 3.214448 39.995869 -0.400861 -0.172369 -0.706984 -0.704552 2.465333 -0.578901 2.867577 -0.784245 0.603264 0.001498 0.668136 0.519923 0.044827 -9.935522 5.001680 -9.852243 8.032180 -2.723483 40.627617 -0.100701 -0.429270 0.152086 0.587611 0.590374 0.135726 6.053524 0.832766 -7.594070 -1.472706 1.063311 13.561659 -4.107346 1.763380 25.276775 -1.713637 -15.009738 4.171632 7.770448 -19.833454 -12.257958 18.805857 -22.693398 -16.168581 -45.025600 -78.042137 31.089230 37.399231 -23.531763 -14.552328 -0.123626 -0.021353 0.203154 -13.979415 23.608257 -13.260382 17.644209 58.995838 5.293576 -44.641987 43.057518 -22.753746 -0.689299 -0.218243 -0.220942 +0.115414 1.667116 -0.001869 4.041986 38.260788 0.594429 -0.001946 -0.393636 -0.289911 1.297697 -0.416093 1.081805 -0.765974 0.607201 0.024447 0.670154 0.529064 0.026175 -9.254503 4.691311 -6.477743 4.992439 -1.036441 35.051476 -0.097320 -0.446263 0.162433 0.592240 0.618592 0.138083 5.467309 1.606624 -8.325973 -1.702718 1.867656 13.662179 -4.398946 2.648496 25.536352 -1.452954 -14.958820 3.692956 7.889690 -19.984180 -11.892357 19.756786 -22.420794 -16.740669 -36.328949 -79.980850 25.520666 34.929585 -20.203608 -12.623283 -0.128426 -0.004274 0.177889 -14.112598 24.032343 -13.301061 13.245157 60.299522 3.252534 -43.238102 39.019749 -20.197981 -0.689144 -0.238971 -0.216283 +0.108637 1.663505 -0.003737 5.104290 37.222961 1.615566 -0.240683 -0.185450 -0.144335 0.592479 -0.316342 -0.405420 -0.736195 0.618846 0.038954 0.636596 0.503462 -0.030630 -9.081887 4.134128 -3.473577 2.565075 -0.024397 29.616327 -0.081818 -0.457703 0.163048 0.572104 0.659229 0.146194 5.097970 2.293075 -8.704230 -2.106709 2.635574 13.919961 -5.069269 3.550424 25.750603 -1.375894 -14.946222 3.327837 8.987719 -20.545603 -11.755752 20.987288 -22.442354 -17.527714 -22.815420 -81.186272 14.998302 32.264179 -17.207109 -10.897923 -0.142293 0.015493 0.149503 -13.741647 24.259371 -13.205703 8.258407 60.593971 0.634206 -41.903019 36.643791 -18.400705 -0.675251 -0.238598 -0.207686 +0.101412 1.661618 -0.005874 5.852717 36.023449 2.215918 -0.185361 -0.036818 -0.171264 -0.349911 -0.229349 -1.285258 -0.734838 0.602443 0.031015 0.624536 0.507131 -0.056659 -8.748388 3.513398 -0.655237 0.248337 0.668614 24.423582 -0.078985 -0.441205 0.166362 0.570012 0.663036 0.132547 5.001862 2.743685 -8.852294 -2.554771 3.222870 14.288876 -5.795392 4.371886 26.114792 -1.622642 -14.624389 3.388548 9.966020 -20.587978 -12.521220 21.675379 -22.483337 -17.954811 -10.330646 -81.106750 4.553654 31.120750 -15.683968 -10.084130 -0.132992 0.000772 0.155983 -13.817961 24.514492 -13.282081 3.933015 60.883949 -1.739448 -41.091583 34.993103 -17.245577 -0.670386 -0.214035 -0.209511 +0.093694 1.659649 -0.007629 6.131881 35.297848 2.557128 0.140792 -0.076288 -0.700369 -0.945605 -0.195595 -1.348137 -0.735919 0.615639 0.039135 0.623030 0.509823 -0.064835 -8.137462 2.948272 1.566549 -1.656938 1.063582 20.056902 -0.078516 -0.436332 0.170880 0.573877 0.685527 0.132780 5.203964 3.027670 -8.987067 -2.935827 3.644809 14.544716 -6.430330 4.970622 26.468714 -1.715857 -14.595074 3.133125 10.391131 -20.751883 -13.027472 22.307554 -22.069473 -18.394569 -3.464134 -80.831306 -1.070836 30.342783 -14.991481 -9.655028 -0.143049 -0.016428 0.153628 -14.138993 24.599751 -13.440356 1.880020 61.035263 -2.997286 -41.170979 33.948147 -16.881983 -0.673929 -0.200437 -0.213240 +0.085203 1.658314 -0.009493 5.960455 34.002510 3.163736 0.682037 -0.217011 -1.864792 -1.128206 -0.188258 -1.227100 -0.763171 0.674046 0.045236 0.601561 0.487997 -0.111852 -7.494087 2.730364 1.876862 -2.839525 1.258644 17.465479 -0.051700 -0.484481 0.174603 0.586676 0.746890 0.141622 5.676180 3.298579 -9.076401 -3.282069 4.062600 14.392307 -7.085402 5.542564 26.450905 -1.872245 -14.158875 2.274806 10.132704 -20.946558 -12.466346 22.521252 -20.788273 -18.695835 -4.992489 -80.579605 0.703920 29.917797 -15.813098 -9.680202 -0.192998 -0.006835 0.124030 -14.273344 24.135994 -14.065504 1.358220 62.807419 -3.065654 -40.000774 32.790577 -16.121183 -0.705238 -0.218068 -0.234289 +0.077202 1.657614 -0.009918 5.453221 33.028862 3.660711 1.641788 -0.297832 -3.050116 -1.474649 -0.163428 -1.000444 -0.771593 0.711449 0.065923 0.569237 0.444057 -0.147392 -6.791658 2.609566 1.474994 -3.132654 1.263377 16.153952 -0.028051 -0.499574 0.183984 0.575861 0.793300 0.131388 6.246250 3.485019 -9.047722 -3.525821 4.374689 14.036756 -7.661132 6.001658 26.009985 -2.389523 -13.841954 2.069211 10.304131 -21.346611 -11.900013 22.487663 -20.205582 -18.443094 -12.881796 -80.229149 7.255956 30.983335 -17.082664 -10.321006 -0.215359 -0.018506 0.113267 -13.915841 23.607002 -14.039582 3.067813 64.022621 -1.645805 -40.102722 34.100372 -16.643835 -0.713974 -0.215651 -0.262187 +0.069801 1.657736 -0.009577 4.916332 32.620441 4.376898 2.315460 -0.452144 -4.469755 -1.153489 -0.179857 -0.798818 -0.775162 0.750004 0.075509 0.529064 0.385368 -0.186128 -6.208131 2.539699 0.584355 -2.812706 1.134082 15.222023 -0.000596 -0.528919 0.180524 0.555788 0.825924 0.133544 6.671027 3.718239 -9.128987 -3.618779 4.642916 13.447472 -7.950418 6.331552 25.371599 -2.808104 -13.534370 1.966437 10.238871 -21.713171 -10.781826 22.177227 -19.920835 -17.643257 -27.425217 -79.746002 19.012197 33.702026 -19.412605 -11.854951 -0.239858 0.000493 0.096109 -13.289996 22.932802 -13.565120 8.296214 64.747215 1.989123 -41.725578 37.136616 -18.509134 -0.716703 -0.230645 -0.281501 +0.063039 1.658456 -0.008618 4.003965 32.788124 4.840666 3.212996 -0.618104 -6.001636 -0.504762 -0.219728 -0.282488 -0.801564 0.772736 0.073209 0.522865 0.363371 -0.172984 -5.456772 2.489627 -0.343292 -1.937934 0.914417 14.788194 0.009172 -0.538319 0.179718 0.557816 0.824922 0.126989 7.351855 3.833125 -9.183214 -3.492319 4.739820 12.859618 -7.923731 6.443955 24.833860 -2.974798 -13.731130 1.955606 9.426987 -21.815243 -10.321687 21.122181 -19.454792 -16.758776 -44.364414 -79.027069 32.739819 36.405079 -22.399908 -13.767385 -0.252362 -0.011473 0.102143 -13.294688 22.132700 -13.033670 15.881107 64.539932 6.900066 -44.752182 41.038544 -21.676315 -0.730775 -0.234082 -0.303218 +0.055925 1.659370 -0.006387 3.210335 33.209690 5.070128 3.959821 -0.709801 -7.099002 0.274986 -0.267421 0.040806 -0.806341 0.780559 0.075508 0.538505 0.373692 -0.140717 -4.776027 2.418915 -0.944138 -1.029419 0.707528 14.399861 0.009676 -0.557325 0.178543 0.568182 0.814972 0.136537 7.483667 3.717680 -9.406837 -3.278350 4.567672 12.435507 -7.474792 6.227635 24.650534 -3.096117 -13.722536 1.924549 8.107860 -21.527048 -9.606344 19.553572 -18.304516 -15.632386 -59.704826 -77.050789 44.409248 39.375587 -26.958700 -16.423458 -0.267279 -0.001405 0.087542 -13.110203 21.245829 -12.729794 24.303730 64.399689 12.467034 -46.927135 45.180073 -24.919319 -0.739410 -0.260204 -0.298586 +0.048523 1.660086 -0.003551 2.405284 33.847500 4.986825 4.808879 -0.743719 -7.914105 1.202046 -0.333014 0.483440 -0.807180 0.775475 0.071905 0.575853 0.433174 -0.115036 -4.165576 2.212433 -0.919981 0.230435 0.431386 13.634420 -0.003064 -0.576829 0.181055 0.601705 0.811189 0.155496 7.609995 3.478138 -9.731476 -3.102810 4.281628 12.252445 -6.982843 5.896212 24.948536 -2.947755 -13.687493 1.699193 7.137354 -21.073893 -9.711421 17.436028 -16.506262 -14.743447 -72.680977 -74.272087 53.267750 41.411968 -31.998646 -19.207521 -0.285676 0.010030 0.063321 -13.027251 20.394306 -12.891348 34.501976 64.344765 19.099611 -47.908665 49.015976 -27.805302 -0.756503 -0.283991 -0.275118 +0.040955 1.659004 -0.000245 1.769227 33.683697 5.158602 5.985386 -0.606450 -8.480288 1.259977 -0.313284 0.189739 -0.865306 0.817283 0.056830 0.586940 0.437726 -0.076280 -3.764702 2.160793 -1.428794 1.191885 0.218834 13.231978 -0.008952 -0.580450 0.172351 0.627847 0.815678 0.158247 7.201216 3.339205 -10.041555 -2.972286 3.987144 11.928468 -6.350002 5.627696 24.860329 -2.910725 -13.472461 1.538499 6.097837 -20.417250 -10.162145 16.063993 -14.072212 -14.076571 -81.620674 -70.282127 57.399010 42.221367 -37.094517 -21.832954 -0.320447 -0.038487 0.086913 -13.495538 19.350491 -13.298965 45.798290 63.360043 26.231855 -46.811165 53.752232 -30.072666 -0.790140 -0.265427 -0.305028 +0.034388 1.657605 0.003000 1.144738 33.025787 5.307882 7.033484 -0.448961 -8.729427 1.381562 -0.301370 -0.251613 -0.877875 0.818331 0.044097 0.596842 0.448076 -0.057899 -3.291155 2.121921 -1.888854 1.963012 0.078161 12.697372 -0.016969 -0.572665 0.162653 0.636253 0.804818 0.161538 6.976700 3.347194 -10.208448 -2.928607 3.909959 11.683503 -5.986039 5.510717 24.604748 -2.745797 -13.007541 1.366728 6.285728 -19.888689 -10.660829 14.415115 -12.292968 -13.341600 -85.224579 -66.551514 57.041687 41.779133 -42.537186 -23.895697 -0.321497 -0.045966 0.100342 -13.231837 18.825428 -13.634550 54.367344 61.988094 31.261580 -43.298069 57.807617 -30.236252 -0.792365 -0.257303 -0.306645 +0.029314 1.656499 0.005097 0.669527 32.429909 5.372944 7.841229 -0.380284 -9.006553 1.467680 -0.304590 -0.109049 -0.890625 0.816625 0.032260 0.605173 0.445830 -0.034567 -2.892600 2.141472 -2.302336 2.423281 -0.002901 12.440843 -0.029012 -0.555611 0.155990 0.633152 0.785317 0.164586 6.744302 3.348310 -10.215914 -2.882294 3.829966 11.536366 -5.658938 5.414783 24.333467 -2.706018 -12.687343 1.444749 6.532473 -19.482269 -11.222239 13.231344 -11.151945 -12.730559 -86.726524 -63.624542 55.535744 40.800503 -47.029503 -25.299522 -0.311934 -0.059239 0.130391 -12.893551 18.718836 -13.714771 59.558746 60.562210 33.678078 -40.230492 60.605011 -29.822653 -0.792353 -0.241202 -0.310784 +0.022668 1.654605 0.007282 0.092142 31.597691 5.424376 8.836014 -0.350310 -9.512893 1.626200 -0.317067 0.738954 -0.897748 0.795198 0.014435 0.604065 0.421635 0.001174 -2.476802 2.180535 -2.854814 3.073027 -0.122512 12.143336 -0.047730 -0.509152 0.148696 0.605717 0.736376 0.160575 6.412073 3.356744 -9.996611 -2.835008 3.732319 11.412697 -5.244916 5.289596 23.673195 -2.849306 -12.387654 1.799806 6.992700 -18.997723 -12.095221 11.217264 -10.980042 -11.968382 -85.918465 -59.576199 50.509739 36.548660 -52.498924 -25.223112 -0.278501 -0.088753 0.191059 -11.630080 19.760973 -13.522481 63.401157 57.686375 33.489197 -32.438881 64.026749 -26.379099 -0.777157 -0.200458 -0.316274 +0.015816 1.651898 0.009311 -0.346052 30.225321 5.750088 9.531106 -0.300225 -10.131926 2.119071 -0.325227 1.347871 -0.878593 0.754624 0.003394 0.570500 0.358994 0.024517 -2.025930 2.525628 -4.155605 3.312904 -0.146578 12.885932 -0.056367 -0.451923 0.144641 0.543078 0.674624 0.147494 5.965568 3.657798 -9.588206 -2.725786 3.915745 11.112229 -4.736913 5.366370 22.351368 -3.014244 -12.278728 2.694350 7.286094 -18.560572 -12.151581 9.155830 -11.925589 -10.879488 -84.275963 -54.997200 43.980423 28.727808 -57.309170 -22.576441 -0.234277 -0.117662 0.250222 -10.244849 21.932104 -13.108867 65.382286 53.725140 30.628954 -18.825352 65.762871 -18.167976 -0.738716 -0.151958 -0.319804 +0.008760 1.649626 0.012510 -0.999998 29.335575 5.424058 10.527983 -0.171201 -10.518970 2.311136 -0.339245 2.378149 -0.825436 0.665377 -0.006380 0.596336 0.362738 0.100848 -1.173438 2.781909 -4.656137 3.620914 -0.168552 13.683772 -0.110414 -0.373355 0.135275 0.492918 0.564564 0.156979 5.869252 3.727466 -8.864503 -2.668628 3.966125 11.067311 -4.468282 5.249524 21.111616 -3.081929 -12.207443 3.958512 7.653275 -17.707989 -12.922266 5.672904 -13.086706 -10.138650 -80.174736 -50.558403 36.178272 14.291852 -61.110950 -14.655278 -0.146614 -0.120485 0.323428 -7.790674 24.402287 -12.775517 65.683685 49.101234 25.930243 1.063916 64.972542 -5.279998 -0.680986 -0.120330 -0.279121 +0.002342 1.647969 0.015906 -1.545002 28.503132 4.917855 11.255604 -0.112813 -11.187887 2.554923 -0.356537 4.445276 -0.768865 0.547068 -0.029979 0.592443 0.356620 0.158759 -0.336017 2.999358 -4.896440 3.812555 -0.206337 14.648819 -0.159455 -0.259794 0.131750 0.424873 0.443809 0.144621 6.138334 3.888362 -7.623950 -2.718828 4.163181 10.921990 -4.609787 5.295933 19.414034 -3.299735 -12.379153 6.243906 8.549666 -16.876646 -14.212322 2.163591 -14.333405 -9.709208 -75.590454 -45.950649 28.556053 -5.795544 -61.292072 -2.159915 -0.054062 -0.168231 0.410493 -4.063213 26.283182 -11.405672 66.063904 43.012012 19.783836 18.945408 61.808441 5.129745 -0.612648 -0.037668 -0.241363 +-0.004034 1.644409 0.019044 -2.046311 27.653175 4.539516 11.724346 -0.073588 -12.399853 3.162879 -0.415166 7.392632 -0.672674 0.418927 -0.035707 0.608762 0.372285 0.222884 0.397444 3.299001 -5.284660 4.084406 -0.221023 15.640098 -0.218023 -0.160060 0.132093 0.354525 0.324163 0.157174 6.143893 3.934645 -6.121440 -2.699832 4.324343 10.455042 -4.652387 5.300210 17.206573 -3.460623 -12.583629 8.459460 9.184999 -16.207094 -14.927953 -1.505674 -15.215812 -8.888121 -71.796814 -40.839802 21.651861 -23.209408 -57.960960 7.782998 0.042970 -0.176965 0.470766 -0.510126 27.831076 -9.719409 65.360329 37.274128 13.784561 27.870729 55.404690 8.450658 -0.531611 0.012753 -0.169966 +-0.010498 1.640933 0.022349 -2.233043 27.238579 3.961143 11.760059 -0.163287 -13.844517 3.857262 -0.544328 11.236992 -0.609022 0.298193 -0.070127 0.655837 0.422302 0.289971 0.990264 3.529787 -5.217776 4.242348 -0.228390 16.699554 -0.288210 -0.073266 0.122675 0.313232 0.196006 0.182494 5.940618 3.663647 -4.339733 -2.750357 4.217844 9.962990 -4.756522 5.125760 15.130462 -3.696817 -12.523713 10.992363 9.895925 -15.424960 -16.279505 -5.669021 -16.076023 -8.397373 -67.712822 -36.101723 15.293859 -30.137659 -50.419628 9.602019 0.141062 -0.167769 0.544226 3.041803 29.458523 -8.241609 64.120483 32.167873 8.529281 27.684877 45.489082 5.932588 -0.474296 0.054013 -0.093745 +-0.017929 1.637595 0.024738 -2.526578 26.390026 3.281994 11.859721 -0.398713 -15.907858 4.322669 -0.720167 16.379829 -0.576837 0.201797 -0.107915 0.706499 0.483274 0.362983 1.691269 3.903660 -5.586570 4.314372 -0.212810 18.413666 -0.347105 0.000672 0.105034 0.303264 0.083556 0.191757 5.669950 3.361036 -2.416411 -2.743640 4.133983 9.466788 -4.766204 5.008610 13.434272 -3.972103 -12.054435 12.986801 9.888752 -14.380226 -17.601641 -9.669702 -15.824588 -8.754024 -64.464470 -32.356384 10.911187 -30.276041 -40.833458 7.347875 0.219656 -0.172996 0.604624 6.769095 29.729076 -6.881930 63.583786 27.953762 4.900280 24.332163 36.803856 3.119418 -0.431472 0.088738 -0.041413 +-0.025906 1.634918 0.025309 -2.978992 24.742067 2.354896 12.045663 -0.707246 -17.998175 4.633310 -0.932183 22.216169 -0.580952 0.124310 -0.156029 0.754247 0.531115 0.438724 2.318411 4.542555 -6.405538 4.740817 -0.267876 21.177885 -0.401851 0.084192 0.084814 0.300761 -0.022304 0.185894 5.319794 3.151179 0.003651 -2.663121 4.167975 8.904583 -4.675383 5.063518 11.740530 -4.406235 -11.455246 15.146665 10.427155 -13.344041 -19.584890 -13.915477 -14.979415 -8.975922 -61.607368 -28.843891 7.250041 -27.536211 -33.652313 4.740300 0.295767 -0.204325 0.690821 10.796494 29.657585 -5.520434 62.738575 24.077337 2.029039 20.597664 28.916431 1.261694 -0.403661 0.144232 -0.017180 +-0.033604 1.631461 0.026291 -2.938291 23.196104 1.665060 11.743255 -1.365583 -20.472963 4.670496 -1.176808 28.744678 -0.593355 0.094028 -0.184494 0.759990 0.528423 0.452361 2.454143 4.989292 -7.128467 5.086215 -0.372964 23.673584 -0.425461 0.140258 0.071171 0.288516 -0.060632 0.171416 4.127890 3.104728 2.044532 -2.478197 4.114188 8.424778 -4.044780 5.023692 10.357756 -5.493556 -10.132643 16.806961 12.063702 -12.761723 -20.664846 -15.978810 -13.230397 -9.054479 -61.277134 -26.025434 4.431917 -21.489691 -30.057558 1.932083 0.343104 -0.232048 0.758958 14.737449 28.680328 -4.591903 60.852917 20.876347 0.473342 17.325766 20.632584 0.450206 -0.386390 0.195444 -0.025037 +-0.040319 1.625461 0.026921 -3.139272 21.789230 1.088092 11.549229 -2.144103 -23.743189 4.734555 -1.493840 35.868851 -0.587350 0.067222 -0.196489 0.758475 0.518299 0.470893 2.479411 5.563029 -8.446764 6.035028 -0.702205 26.933628 -0.440072 0.178666 0.061357 0.271258 -0.097874 0.161634 2.955367 2.870569 4.298859 -2.124471 3.861637 7.741437 -3.255532 4.744660 8.609985 -6.378093 -9.075284 17.438549 12.287344 -12.162248 -21.043112 -18.055866 -10.573992 -9.369792 -60.906883 -23.154047 1.943765 -16.244444 -26.982914 -0.032990 0.376918 -0.243729 0.795665 17.573069 26.370966 -4.479882 58.671471 18.371773 -0.064664 14.899653 12.588306 0.298212 -0.364035 0.222130 -0.025561 +-0.045310 1.616833 0.028576 -3.721910 20.571373 0.405763 11.584590 -2.809723 -27.204296 4.597153 -1.777532 42.993851 -0.596537 0.064302 -0.204855 0.740473 0.484392 0.472920 2.781845 6.112828 -9.514110 7.276214 -1.195430 30.066996 -0.437875 0.197874 0.062607 0.248340 -0.114336 0.153702 2.887526 2.501115 6.548411 -1.863120 3.751830 6.986165 -3.113288 4.678326 6.820383 -6.980174 -8.374520 17.448805 12.196870 -11.864803 -21.240942 -19.825966 -8.055820 -9.822625 -59.771877 -20.386696 0.043366 -12.204634 -23.521408 -1.211346 0.388413 -0.262002 0.826478 18.780666 23.616423 -4.681273 56.686462 16.278784 -0.600133 12.053510 6.484162 0.243022 -0.358833 0.247507 -0.038983 +-0.050390 1.609850 0.031528 -4.164714 18.779064 -0.571429 11.651412 -3.189358 -29.927025 3.951278 -1.723227 49.565891 -0.585724 0.046345 -0.199193 0.727997 0.464540 0.485919 3.089249 6.575175 -9.795017 8.262147 -1.562730 32.450603 -0.447486 0.230806 0.058465 0.227480 -0.131548 0.140561 2.905967 2.278013 9.153730 -1.862588 3.990889 6.227502 -3.481675 4.923924 5.023766 -7.037124 -7.792000 17.676662 12.762646 -11.455729 -21.567152 -20.872562 -6.144718 -9.970915 -57.116722 -17.528547 -1.568299 -9.404504 -20.669231 -1.741714 0.410909 -0.283389 0.853394 19.181568 20.903532 -4.870619 54.449150 14.406320 -1.301590 9.243716 2.090031 0.278573 -0.337335 0.272931 -0.047898 +-0.057211 1.605782 0.036266 -4.612236 16.427341 -2.135710 11.820450 -3.107033 -31.206917 3.091653 -1.322016 54.947258 -0.626754 0.048919 -0.216443 0.718806 0.443222 0.517402 4.185810 6.984067 -8.841696 8.102322 -1.426917 33.979382 -0.460147 0.266863 0.053371 0.220950 -0.153298 0.122410 2.427021 2.401033 11.749820 -1.927197 4.383028 5.716813 -3.726162 5.376480 3.741900 -6.367495 -7.498810 18.583605 13.039213 -10.518732 -22.383707 -21.309656 -4.651912 -10.035110 -53.589840 -14.920925 -2.754882 -7.078250 -18.959539 -2.059306 0.415850 -0.343465 0.913075 18.751753 18.903433 -4.866766 51.884148 12.727719 -2.065844 6.672866 -0.804184 0.376527 -0.345897 0.323400 -0.083478 +-0.064128 1.603041 0.041122 -4.742250 14.785318 -3.866420 11.541334 -3.234601 -32.209484 2.247242 -0.883049 59.591805 -0.645862 0.057845 -0.233904 0.700061 0.416020 0.543019 5.047765 7.111754 -7.223330 8.218668 -1.401028 34.957157 -0.463283 0.285419 0.046263 0.203705 -0.170998 0.126565 1.404873 2.644516 14.223445 -1.885231 4.638927 5.455352 -3.553349 5.662379 2.828120 -5.478572 -7.589102 19.147963 12.737132 -9.688244 -22.674809 -21.496178 -3.338287 -9.826394 -49.896580 -12.431218 -3.733506 -5.174586 -18.959841 -2.288249 0.397207 -0.381450 0.942090 18.211502 17.283218 -4.631820 48.264683 11.044409 -2.834854 4.661848 -2.397516 0.448268 -0.348293 0.359857 -0.096127 +-0.069281 1.600868 0.045711 -5.080117 13.542512 -5.808462 11.198509 -3.444896 -32.859943 0.999826 -0.218608 63.356174 -0.663429 0.060625 -0.245815 0.696588 0.411216 0.562385 5.840366 7.123978 -5.370850 8.698271 -1.541639 35.842030 -0.474441 0.292967 0.043815 0.198753 -0.183775 0.134869 1.130462 2.583256 16.295437 -1.830120 4.790107 5.639744 -3.595851 5.847186 2.595757 -4.652845 -7.310275 19.085495 12.422848 -8.621764 -23.338688 -20.916506 -2.140730 -9.444902 -46.766697 -10.292544 -4.396543 -3.669480 -19.995323 -2.481628 0.384241 -0.401387 0.966884 16.610487 15.358989 -4.852176 44.734409 10.001855 -3.376023 3.274905 -2.787215 0.446029 -0.358763 0.379680 -0.103430 +-0.074458 1.598766 0.050820 -4.873990 13.022504 -7.250898 10.048257 -3.977962 -33.546955 -0.350746 0.582151 65.759186 -0.655742 0.068646 -0.232701 0.684207 0.395246 0.565436 5.888405 7.001862 -3.791795 9.446332 -1.827027 36.441429 -0.471601 0.287115 0.052007 0.186085 -0.173529 0.141450 0.411803 2.723772 17.395706 -1.855618 4.776449 6.162052 -3.440972 5.829131 2.923939 -4.101944 -7.133761 18.307856 11.991088 -8.035526 -23.165541 -19.417786 -0.824710 -8.871023 -44.519711 -8.417058 -4.978661 -1.524055 -21.865860 -2.850051 0.367466 -0.405771 0.961909 14.722197 13.643157 -4.894085 41.189999 9.011080 -3.776797 2.086179 -2.738231 0.412427 -0.360218 0.379198 -0.106974 +-0.079784 1.597909 0.056354 -4.809546 12.073950 -8.736429 9.394713 -3.925914 -33.527271 -2.189096 1.901391 66.879860 -0.654295 0.069118 -0.219790 0.659468 0.379724 0.552277 6.313759 7.036048 -2.154211 9.629060 -1.800329 36.975513 -0.459036 0.281753 0.066804 0.178455 -0.158759 0.129122 -0.323338 3.194349 18.095259 -1.827985 4.958994 6.899821 -3.158443 6.019390 3.627603 -3.309435 -7.412144 17.305094 11.513452 -7.628661 -23.046267 -17.866680 0.381365 -8.430048 -42.091728 -6.959424 -5.241391 0.621886 -23.314865 -3.173356 0.347769 -0.422449 0.949155 12.663950 12.007515 -4.618950 37.429699 7.834501 -4.095014 1.314404 -1.346673 0.306888 -0.367366 0.384559 -0.120845 +-0.084986 1.598303 0.062329 -4.905817 10.690448 -10.232709 8.813299 -3.516993 -32.624908 -4.000945 3.209200 66.177353 -0.628822 0.058627 -0.204224 0.642016 0.366629 0.535934 7.012474 7.160951 -0.450217 9.502440 -1.554054 37.370792 -0.447925 0.280693 0.073057 0.165153 -0.149896 0.122007 -0.181530 3.576280 18.614855 -1.929441 5.403606 7.652115 -3.457149 6.456235 4.370292 -3.180257 -7.459258 16.531399 11.955357 -7.746142 -22.854734 -16.217678 1.189944 -7.740199 -39.297939 -5.592618 -5.362935 2.573493 -25.246054 -3.504770 0.349338 -0.411427 0.929805 11.004084 10.558630 -3.919111 33.727859 6.368999 -4.323321 0.380682 0.369494 0.223897 -0.353273 0.377183 -0.118240 +-0.090045 1.599456 0.068382 -4.764175 9.472632 -11.389778 8.194818 -3.203891 -32.080097 -6.308816 4.726672 64.876518 -0.594184 0.045811 -0.180859 0.635236 0.366382 0.513613 7.542616 7.199426 1.087874 9.245399 -1.267772 37.488579 -0.435391 0.260886 0.083774 0.159656 -0.134604 0.119195 -0.259709 4.182143 18.623560 -2.098221 5.970319 8.501646 -3.703206 6.969938 5.385630 -2.635448 -7.721590 15.207582 12.445002 -7.977115 -22.183935 -14.880594 1.646604 -7.528221 -35.811028 -5.224490 -5.009884 4.472164 -26.187166 -3.699622 0.350936 -0.371288 0.891654 10.114367 8.734211 -3.147747 30.044931 4.500038 -4.546605 -1.424486 2.797348 0.078395 -0.344060 0.341090 -0.107309 +-0.094643 1.601078 0.073991 -4.638529 8.865036 -12.056458 7.228813 -3.230319 -32.151878 -8.541168 5.885347 62.703785 -0.555931 0.053639 -0.153522 0.609414 0.348818 0.467438 7.763189 7.193855 2.031472 9.502087 -1.262183 37.493080 -0.408380 0.224220 0.093881 0.148360 -0.095332 0.124063 -0.292985 4.645823 18.018602 -2.202692 6.297347 9.379336 -3.796278 7.270170 6.604698 -2.245090 -7.906760 13.372962 12.713310 -8.492113 -21.010517 -13.608711 1.922604 -7.252903 -32.840405 -4.936044 -4.726596 7.798020 -27.078276 -4.277680 0.330077 -0.326625 0.833062 9.330679 7.079579 -2.544061 25.858721 3.136989 -4.277082 -2.185851 3.598872 0.036887 -0.335863 0.301582 -0.096241 +-0.098509 1.604193 0.080551 -4.668190 8.392828 -12.915040 6.143889 -3.214820 -31.367960 -10.638514 6.606496 58.815426 -0.540175 0.060363 -0.146239 0.596673 0.333300 0.454337 8.259864 7.206565 3.228472 9.769401 -1.242452 37.568943 -0.395849 0.203685 0.091858 0.138729 -0.085013 0.131284 0.298186 4.796818 17.381380 -2.475327 6.585726 10.201623 -4.377612 7.573607 7.831286 -1.571793 -8.462477 12.707538 12.794375 -8.827060 -20.202139 -12.766110 1.656136 -6.799743 -29.322397 -4.287319 -4.482095 11.376641 -27.964632 -5.002304 0.317255 -0.298695 0.806718 7.995950 6.170955 -1.583618 22.531973 1.801779 -3.888522 -2.336093 3.534618 0.079791 -0.331641 0.278165 -0.088712 +-0.102589 1.608993 0.087801 -4.515129 8.508290 -14.171170 4.724641 -3.417014 -29.568516 -12.679696 6.892889 53.679901 -0.542896 0.079948 -0.150197 0.576519 0.307418 0.444044 8.547130 6.856709 5.327373 10.324254 -1.367736 36.719761 -0.389933 0.207023 0.087851 0.123648 -0.071947 0.140988 0.205218 5.100698 17.009731 -2.506179 6.642416 11.258969 -4.329958 7.734841 9.163054 -1.460240 -8.582478 12.430688 13.390949 -8.933520 -20.630688 -11.434558 1.256941 -6.365737 -26.768579 -3.896862 -4.375902 15.567303 -28.356167 -5.987316 0.298042 -0.308146 0.810638 6.794379 5.634328 -0.460415 18.499191 0.520377 -3.301985 -1.353282 2.821591 0.201188 -0.332234 0.297272 -0.091726 +-0.106132 1.612353 0.096472 -4.647935 8.156320 -15.108036 3.612535 -3.238226 -27.646391 -14.134160 6.781410 48.175400 -0.587231 0.127416 -0.160943 0.540394 0.254167 0.424194 9.165415 6.904548 6.592752 10.859378 -1.441973 36.782459 -0.369400 0.208376 0.081467 0.115114 -0.043592 0.129077 0.849933 5.252676 16.002842 -2.686818 6.808344 12.135622 -4.747991 8.073049 10.572889 -1.661015 -8.504340 12.417289 14.038247 -9.160443 -20.928003 -10.109330 1.281690 -6.068034 -24.055748 -3.332074 -4.221080 19.610655 -29.577295 -7.185842 0.270424 -0.346844 0.833003 5.606927 4.894911 0.205645 14.801491 -0.173862 -2.729801 -0.228601 1.499159 0.287694 -0.349434 0.331402 -0.133159 +-0.109715 1.614852 0.106168 -4.666320 8.091014 -15.454363 2.215467 -3.202193 -26.107677 -14.568086 6.133189 42.664192 -0.640263 0.188589 -0.171176 0.506537 0.205565 0.380487 9.456243 7.161919 6.923061 11.556711 -1.607391 37.258102 -0.340074 0.188872 0.077757 0.120177 0.004275 0.116288 1.205187 5.488316 14.241652 -2.874127 6.890341 12.829988 -4.989864 8.338240 12.124058 -2.303243 -8.041579 12.304311 14.657230 -9.638011 -20.747490 -8.696290 1.593258 -6.027452 -21.449450 -3.081878 -3.912217 23.158499 -29.773090 -8.086489 0.238096 -0.369093 0.842276 5.142882 3.800783 0.207637 10.800345 -0.143235 -2.115229 0.981255 0.112588 0.285438 -0.377984 0.348321 -0.179623 +-0.112747 1.616625 0.115095 -4.990741 8.164786 -15.865658 1.043461 -3.087590 -24.173313 -14.748280 5.222101 36.373734 -0.683668 0.250060 -0.168607 0.465346 0.141514 0.348504 9.717762 7.497554 6.983899 12.795793 -2.025599 38.039116 -0.318883 0.179148 0.078920 0.107374 0.051464 0.109039 2.012276 5.423952 13.253212 -3.071696 6.888405 13.184701 -5.539055 8.461892 12.861990 -2.746953 -7.700154 12.335080 14.982339 -9.958453 -20.515394 -7.200118 1.981705 -5.887343 -18.871796 -2.684505 -3.586296 26.492111 -28.849470 -8.599340 0.206723 -0.408235 0.863617 4.042210 3.053280 0.576295 8.387979 -0.728333 -1.799165 1.430843 -0.014770 0.295403 -0.399283 0.377449 -0.227601 +-0.115463 1.616859 0.124199 -5.450464 8.495954 -15.980325 -0.082884 -3.123311 -22.469206 -14.564780 4.167786 30.123472 -0.689176 0.276901 -0.158702 0.423207 0.082733 0.319910 10.045534 7.669461 6.689302 14.109858 -2.541101 38.632874 -0.294464 0.182988 0.081005 0.083759 0.081419 0.089145 2.597516 5.272849 12.169952 -3.216062 6.739087 13.135448 -5.925075 8.380306 13.078330 -3.344894 -6.949200 13.024004 15.546537 -10.218468 -19.273079 -5.055687 2.270844 -5.061776 -17.396822 -1.643019 -3.473819 29.611986 -28.293369 -9.116992 0.196602 -0.430118 0.866134 2.710117 2.595574 1.058337 6.394696 -1.610484 -1.632326 1.544837 -1.646039 0.288008 -0.392895 0.396230 -0.258273 +-0.117858 1.614863 0.134055 -6.061451 9.195331 -15.831934 -1.501298 -3.426906 -21.074863 -13.357212 2.985122 24.702532 -0.692994 0.303578 -0.143693 0.389224 0.033678 0.299776 10.340446 7.637849 6.225935 15.497364 -3.190669 39.035683 -0.274082 0.177473 0.089672 0.063842 0.109614 0.076712 2.998128 5.011083 10.540645 -3.275383 6.376997 12.872963 -6.085165 8.089252 13.292309 -3.519217 -6.618376 13.792407 15.296922 -10.437434 -17.670822 -3.321713 2.294897 -4.212504 -15.451892 -0.475142 -3.209919 31.677366 -27.372871 -9.164584 0.180383 -0.451834 0.862879 1.352678 2.111200 1.626733 4.355453 -2.467059 -1.297570 2.130320 -1.259604 0.279247 -0.393655 0.405323 -0.283223 +-0.120513 1.612530 0.144085 -6.603261 9.545199 -15.825659 -2.758981 -3.560180 -19.574232 -11.625344 1.991087 20.069298 -0.665384 0.288755 -0.130584 0.387868 0.038364 0.282512 10.582731 7.690639 5.792287 16.742950 -3.754691 39.623516 -0.274453 0.182917 0.097448 0.055862 0.121235 0.073051 3.591081 4.775169 9.176961 -3.424733 6.216575 12.704245 -6.480902 7.936376 13.571879 -4.004970 -5.928668 14.800937 15.995433 -10.609320 -16.790525 -1.665542 1.946813 -3.410395 -13.143541 0.400385 -2.866153 32.169460 -25.569466 -8.505278 0.191705 -0.443357 0.851276 0.621885 1.823771 1.944118 1.827471 -3.001677 -0.957822 2.640047 -2.206958 0.227907 -0.380538 0.402652 -0.271961 +-0.123220 1.608500 0.153391 -7.189845 9.813557 -15.963759 -3.706390 -3.512677 -18.148531 -9.916778 1.270711 16.204428 -0.637864 0.259861 -0.124064 0.398722 0.075254 0.257444 11.109981 7.739640 5.467600 17.587557 -4.148072 40.342140 -0.276966 0.172983 0.105461 0.068731 0.128764 0.070546 4.055035 4.415062 8.204596 -3.618448 5.985120 12.616246 -6.899271 7.640937 13.838318 -3.975210 -5.029077 15.042229 16.410110 -10.256472 -16.080297 -0.136868 2.209439 -3.057927 -10.736804 0.844927 -2.434971 32.167191 -23.359604 -7.573365 0.201447 -0.413948 0.823907 -0.264165 1.500163 1.611749 -0.304248 -2.315142 -0.683312 3.107346 -3.377892 0.129038 -0.375496 0.380101 -0.252288 +-0.125389 1.603304 0.161551 -7.762503 9.759625 -16.367041 -4.034342 -3.274439 -16.713995 -8.999638 0.903693 13.275191 -0.662607 0.286004 -0.145914 0.390860 0.053399 0.256722 11.935142 7.936140 5.336325 18.010324 -4.393959 41.526081 -0.267515 0.164279 0.089025 0.069417 0.126679 0.077573 4.779641 4.019969 7.819373 -3.762131 5.749017 12.606022 -7.364584 7.474751 13.956902 -4.216215 -4.234599 14.905465 16.374588 -9.882743 -16.095068 1.578741 2.796022 -2.966520 -9.473142 0.768060 -2.114720 32.032555 -21.322016 -6.828822 0.190352 -0.406092 0.834044 -1.883126 1.124859 1.292994 -1.650442 -1.648684 -0.590864 3.239905 -3.963721 0.092462 -0.380052 0.381701 -0.263474 +-0.127692 1.596628 0.169905 -8.287926 9.927526 -16.833183 -4.033185 -3.067184 -15.561388 -8.623568 0.755996 11.709300 -0.673577 0.305737 -0.146311 0.389679 0.038754 0.268602 12.661439 7.976710 5.375806 18.591475 -4.774434 42.587254 -0.262180 0.156926 0.082958 0.070027 0.129305 0.080348 5.197240 3.631244 7.733939 -3.852854 5.487174 12.597133 -7.647515 7.222457 13.924252 -4.091022 -3.659539 14.312510 16.001905 -9.378504 -15.880338 2.847676 3.333412 -2.945452 -7.813217 0.838075 -1.802546 32.203983 -19.784925 -6.276993 0.181334 -0.402622 0.836016 -3.128233 0.662186 1.185500 -2.829223 -1.517295 -0.430593 3.348774 -3.719612 0.078712 -0.382202 0.374753 -0.274060 +-0.130082 1.588887 0.177145 -8.330001 9.957185 -17.164865 -3.891643 -3.021239 -15.265197 -9.403909 0.900846 11.950698 -0.647356 0.275239 -0.131935 0.390185 0.059145 0.270892 12.436865 8.089232 5.304255 19.960138 -5.633677 43.946957 -0.261032 0.171944 0.096977 0.070410 0.127425 0.064011 5.324252 3.333356 7.641685 -4.170708 5.342016 12.541788 -8.132067 6.992322 13.855093 -4.123245 -2.979521 14.180596 15.774145 -8.761547 -15.667060 3.951105 3.313497 -2.394172 -5.163102 1.918368 -1.360538 31.343094 -18.887360 -5.635419 0.187795 -0.414962 0.818552 -3.774750 0.417719 1.397858 -4.096479 -1.912895 -0.166186 3.689137 -3.036293 0.077865 -0.369428 0.379664 -0.265328 +-0.133382 1.582611 0.183124 -7.826780 10.170585 -17.862226 -4.203766 -3.196898 -14.825809 -10.091387 1.055095 12.835079 -0.616163 0.214050 -0.131929 0.444946 0.141572 0.282222 11.478287 8.016389 5.764610 21.524401 -6.641990 44.930347 -0.284557 0.168425 0.106538 0.100806 0.095701 0.067029 4.610313 3.198848 8.023445 -4.533473 5.237597 12.838604 -8.313654 6.720548 14.093591 -4.039423 -2.456700 13.694516 15.934319 -8.169155 -16.077951 4.854856 3.296032 -2.243026 -2.315151 2.106153 -0.906347 29.448811 -17.323748 -4.749540 0.228575 -0.363391 0.802308 -3.731920 0.233858 1.292859 -5.112161 -2.066021 -0.036885 3.336510 -3.255187 0.040207 -0.364527 0.337668 -0.225992 +-0.137231 1.576327 0.187931 -7.121253 10.531985 -18.186544 -4.260695 -3.446183 -15.352843 -11.534386 1.446088 14.706898 -0.570227 0.165423 -0.105773 0.470611 0.198730 0.283171 10.551448 7.893314 5.902022 22.302813 -7.336543 45.840302 -0.297606 0.173449 0.123018 0.116589 0.094797 0.057875 3.073220 3.358293 8.209476 -4.744444 5.136832 12.972291 -7.971725 6.424567 14.194328 -3.737944 -2.164491 13.171371 16.108210 -7.749840 -15.899817 5.731382 3.020430 -1.954063 0.465151 2.154952 -0.428763 27.217068 -16.087132 -3.961681 0.250958 -0.345510 0.771507 -3.211960 0.240280 1.175716 -6.022431 -2.161690 0.025215 3.156392 -4.088842 -0.047712 -0.349228 0.314280 -0.200142 +-0.140306 1.572599 0.191439 -6.592206 10.240909 -19.057102 -3.434460 -3.264237 -15.230490 -13.532403 2.045304 16.499632 -0.551856 0.139127 -0.092752 0.491966 0.235377 0.289152 9.931205 7.788028 6.900056 23.022402 -7.871183 46.414806 -0.307767 0.174311 0.133989 0.129016 0.091692 0.055088 2.064168 3.528348 9.150163 -4.910594 5.235661 13.378220 -7.797083 6.389178 14.276160 -3.419210 -2.299507 12.188269 16.229305 -7.511631 -16.391148 5.789742 3.068403 -2.031269 2.835380 2.154497 -0.023702 26.051004 -16.586554 -3.816801 0.264727 -0.332984 0.760163 -2.497242 0.398254 1.184679 -6.591057 -2.424860 0.055855 3.158596 -4.734885 -0.128560 -0.347283 0.299110 -0.186866 +-0.141716 1.569335 0.195407 -6.353044 9.415371 -19.082039 -2.199905 -2.846102 -15.510859 -15.509788 2.605154 17.334547 -0.538553 0.108959 -0.086098 0.525088 0.280027 0.303491 9.947392 7.863386 7.057430 23.056442 -7.970661 47.010242 -0.319354 0.181068 0.141923 0.149293 0.081143 0.045526 1.735502 3.752327 8.963759 -5.055427 5.500407 13.345960 -7.861662 6.612251 14.374300 -3.254130 -2.108151 12.072378 16.796209 -7.275157 -16.625864 5.668366 2.969278 -2.230520 4.069798 1.680057 0.132304 26.270441 -17.528345 -4.008077 0.289562 -0.316038 0.754805 -1.705533 0.194707 1.183935 -6.843164 -2.626917 0.219491 3.792644 -4.511384 -0.184095 -0.344831 0.281109 -0.175595 +-0.143101 1.568544 0.196418 -6.376348 8.893342 -19.057211 -1.229423 -2.522139 -15.357548 -16.606953 2.785415 17.004843 -0.558100 0.148736 -0.103374 0.491119 0.225618 0.285350 10.435431 7.811507 7.003367 22.413446 -7.748784 47.337887 -0.314780 0.175398 0.123969 0.123129 0.088886 0.068763 1.815699 3.812340 9.163201 -5.085547 5.553216 13.219941 -7.927145 6.780885 14.084849 -3.655902 -2.285224 12.369410 16.903236 -7.623636 -16.768309 5.900065 2.361028 -2.219217 3.477397 0.895341 -0.016064 26.504028 -18.293598 -4.334065 0.266281 -0.324072 0.776435 -1.628961 0.383049 1.647285 -5.465694 -3.566809 0.060792 3.674902 -3.976267 -0.093138 -0.348287 0.304610 -0.185130 +-0.143752 1.569957 0.195626 -6.484953 8.266230 -19.135204 -0.690552 -2.263261 -14.517349 -16.955652 2.631006 15.561074 -0.589233 0.190014 -0.115982 0.459007 0.166414 0.289427 11.040097 7.663756 7.134979 21.777348 -7.467365 47.370899 -0.304290 0.192719 0.107907 0.101133 0.093824 0.067390 2.112092 3.630659 9.536168 -5.167405 5.459273 13.233742 -8.115698 6.837215 13.866920 -4.260360 -2.236377 12.409307 17.142771 -7.847057 -17.424526 6.202000 1.857190 -2.381680 1.555007 -0.287408 -0.432220 26.827141 -18.519663 -4.659024 0.248269 -0.362111 0.807142 -1.685102 0.562694 2.063397 -3.754040 -4.032571 -0.064484 4.200025 -2.719692 0.010411 -0.349034 0.345750 -0.212681 +-0.143985 1.573022 0.192893 -6.793901 7.878791 -19.172327 -0.803406 -2.253219 -13.635481 -15.883826 2.152753 13.820489 -0.614937 0.243773 -0.114223 0.415279 0.103309 0.258889 11.517089 7.314377 7.338673 21.419472 -7.320105 46.954151 -0.270968 0.168336 0.109150 0.085642 0.135478 0.063689 2.311306 3.393768 10.115484 -5.090553 5.254531 13.245630 -8.110356 6.662442 13.521987 -4.201078 -1.637134 11.857196 16.948696 -7.744476 -16.186363 6.481126 1.807885 -2.691044 -1.026267 -1.925356 -0.799904 26.896662 -19.123970 -5.044866 0.207140 -0.373712 0.800068 -1.534479 0.603735 1.959674 -1.537172 -3.777610 -0.342273 3.933936 -2.019085 0.079294 -0.363879 0.351008 -0.247020 +-0.144393 1.576939 0.189546 -6.986670 7.315241 -18.699711 -0.961043 -2.208764 -13.202392 -14.564507 1.686006 11.968073 -0.606289 0.250283 -0.091712 0.400672 0.092039 0.249615 11.614175 7.103593 6.981585 21.224133 -7.227644 46.577984 -0.256939 0.160631 0.123151 0.083043 0.159910 0.049123 2.201218 3.302735 10.348373 -4.909746 5.085827 13.087318 -7.856518 6.429253 13.164340 -3.938548 -1.188530 11.354896 16.469244 -7.364497 -15.220625 6.351259 1.954167 -2.725461 -3.412626 -2.873261 -0.945976 25.997648 -21.183775 -5.495074 0.192430 -0.382679 0.778344 -1.256353 0.563632 1.626116 0.892594 -3.231622 -0.653357 3.608182 -1.686814 0.105301 -0.365417 0.344464 -0.259478 +-0.143659 1.581384 0.186036 -7.495810 6.453617 -17.765280 -0.986510 -2.028461 -12.905587 -12.970312 1.166472 9.457721 -0.602859 0.255636 -0.088477 0.409610 0.092206 0.264427 12.007066 6.980643 6.232749 20.594732 -6.836505 45.949673 -0.262479 0.144549 0.119619 0.081127 0.153874 0.064547 2.632933 3.205266 10.285327 -4.560654 4.972835 12.574561 -7.589255 6.307287 12.560180 -3.681509 -1.032625 11.141140 15.622170 -6.963575 -14.742293 5.639156 1.985555 -2.895957 -6.700336 -4.034534 -1.208667 25.352171 -23.627840 -6.154997 0.188470 -0.361756 0.773928 -1.396793 0.603253 1.190646 3.956604 -2.464126 -1.092180 3.573009 -2.528329 0.078660 -0.366740 0.322445 -0.251896 +-0.143561 1.585771 0.181061 -7.891331 5.616909 -16.707088 -1.038863 -1.802781 -12.918028 -11.334343 0.765626 7.155252 -0.563200 0.216995 -0.084229 0.447742 0.145252 0.285479 12.216041 6.825730 5.474120 20.164080 -6.483178 45.036446 -0.273089 0.111050 0.121525 0.095101 0.124934 0.087404 2.341167 3.530588 10.308640 -3.887582 5.052749 12.077816 -6.654142 6.223885 11.990242 -2.464138 -1.317241 10.427986 14.437721 -6.324741 -13.786943 4.690553 2.173807 -3.396336 -9.275579 -6.174442 -1.186380 22.296011 -25.873808 -6.119763 0.196593 -0.287739 0.729604 -1.544602 0.495562 0.648046 7.137653 -1.726215 -1.438157 3.776860 -4.089069 -0.020733 -0.361225 0.253950 -0.204654 +-0.142153 1.589587 0.175036 -8.382668 5.219317 -15.597998 -1.532654 -1.802671 -13.185382 -9.114792 0.383747 5.110231 -0.550915 0.200093 -0.096390 0.479667 0.183914 0.326947 12.052597 6.470433 4.705566 20.159279 -6.414818 43.695225 -0.290919 0.085088 0.115604 0.107265 0.084800 0.121962 2.162014 3.718744 10.174959 -3.101935 4.942400 11.654117 -5.554317 6.049561 11.634850 -0.930983 -1.712035 10.194112 12.484281 -5.139941 -13.407394 2.641463 1.490197 -4.106717 -11.139167 -7.997139 -1.177489 18.854153 -26.704941 -5.618512 0.187962 -0.247050 0.712372 -1.719518 0.568603 0.357677 10.001715 -1.212972 -1.662145 4.643026 -5.751441 -0.138964 -0.365632 0.212493 -0.169808 +-0.140380 1.593287 0.166995 -9.027204 4.744779 -14.548042 -1.834996 -1.733656 -13.647279 -6.889219 0.114915 3.309836 -0.524321 0.135803 -0.085273 0.553670 0.280203 0.406310 11.977673 6.048143 3.933865 20.365271 -6.431501 42.296783 -0.331244 0.085103 0.126267 0.143234 0.024844 0.131496 1.957164 3.846817 10.438134 -2.151007 4.837667 11.290313 -4.242143 5.805895 11.173327 0.496606 -2.232753 9.864738 10.426703 -3.796636 -13.983381 0.913270 1.353712 -5.223752 -14.701874 -10.597493 -1.279086 15.743221 -26.208647 -4.987829 0.222932 -0.226788 0.704068 -2.448790 -0.074496 -0.085176 14.311878 -1.080026 -2.129186 3.667845 -4.527225 -0.033735 -0.359982 0.167045 -0.132422 +-0.138404 1.596462 0.158957 -9.776383 4.059186 -13.215046 -1.823263 -1.599085 -14.620114 -4.978984 -0.023326 1.825259 -0.529056 0.102689 -0.093614 0.604510 0.347831 0.471339 12.011581 5.687165 2.887980 20.592323 -6.407331 40.697468 -0.358858 0.087499 0.127645 0.175376 -0.020692 0.138435 2.239821 3.759958 10.046341 -1.569953 4.691078 10.848043 -3.491640 5.583406 10.962569 1.769138 -2.739426 9.969313 8.666273 -2.647504 -14.892704 -1.436027 1.036598 -6.581644 -17.266937 -12.685010 -1.299336 12.923602 -25.313492 -4.355545 0.233338 -0.229518 0.706753 -1.956451 -0.521411 -1.048034 18.555513 0.041602 -2.587674 1.968000 -3.485270 0.080998 -0.366786 0.150112 -0.113797 +-0.136592 1.599174 0.151080 -10.123203 2.627091 -12.215950 -1.639940 -1.305538 -15.035771 -3.632050 -0.074025 0.244632 -0.534666 0.068475 -0.135518 0.653835 0.406840 0.544688 11.738663 5.458891 2.501002 20.946465 -6.356446 39.155716 -0.397137 0.095535 0.097983 0.195685 -0.101240 0.171619 1.958084 3.950155 9.993382 -0.962064 4.607348 10.527426 -2.480434 5.447578 10.744049 2.818562 -3.179649 10.169446 6.974784 -1.446680 -16.642561 -3.630328 0.799495 -7.603771 -20.407801 -13.888970 -1.456517 10.679452 -25.084690 -4.031521 0.245982 -0.205878 0.723671 -1.488651 -0.430521 -1.875865 22.543802 1.385357 -2.937092 1.078595 -2.840028 0.137294 -0.361989 0.138753 -0.073214 +-0.135083 1.600857 0.144188 -9.921177 0.429309 -11.025945 -1.522462 -1.031967 -15.446438 -2.604009 -0.066624 -1.350608 -0.555501 0.070501 -0.159216 0.671909 0.421145 0.586737 11.004803 5.515843 1.924380 21.285566 -6.297642 38.132904 -0.417411 0.086992 0.081938 0.203967 -0.137504 0.195586 0.761206 4.727621 9.494501 -0.323004 4.765357 10.057901 -1.034976 5.567124 10.391333 4.051054 -3.483506 10.728874 5.551555 -0.387897 -17.001297 -5.892351 -0.022687 -8.610061 -23.867548 -15.246643 -1.548837 8.653895 -23.296774 -3.633492 0.236323 -0.202818 0.742190 -0.240737 -0.049205 -2.362751 25.758085 2.082410 -3.302260 -0.158863 -2.434607 0.179976 -0.372734 0.132387 -0.065850 +-0.133370 1.601738 0.136224 -9.872581 -1.958033 -10.419094 -0.974630 -0.763192 -15.773066 -2.127169 -0.062394 -2.083020 -0.560238 0.034634 -0.186074 0.720761 0.474156 0.653326 10.591419 5.524019 1.835879 21.385736 -6.156803 37.283363 -0.453897 0.104719 0.068437 0.220656 -0.200710 0.214201 0.246868 5.133430 9.404133 0.160709 4.869890 9.934151 -0.075491 5.603343 10.382166 4.942047 -3.348382 11.450862 4.746633 0.889198 -18.371925 -8.541239 -1.717255 -8.951467 -26.295155 -15.325187 -1.916689 7.033906 -22.497637 -3.423249 0.259060 -0.195746 0.771228 1.956504 1.080357 -2.437992 27.462528 2.755091 -3.295211 1.043740 -0.479981 0.071965 -0.369953 0.129946 -0.040088 +-0.131377 1.600938 0.127307 -9.647944 -4.717923 -9.603690 -0.181527 -0.592949 -16.732410 -1.922405 -0.060226 -2.180478 -0.573406 0.038840 -0.196856 0.735534 0.484681 0.678446 10.065540 5.806950 1.165645 21.006548 -5.907564 37.174519 -0.467924 0.109972 0.061205 0.226874 -0.214063 0.225854 0.004381 5.561260 9.440401 0.346306 5.146581 9.712429 0.378251 5.841915 10.135528 5.383222 -2.770237 11.409024 4.639002 1.752362 -19.222498 -10.953382 -3.305969 -9.397245 -28.514326 -15.637279 -2.164821 5.665021 -21.511124 -3.250450 0.255333 -0.198069 0.789267 4.930441 1.781448 -2.727591 28.419796 3.227601 -3.387752 2.119611 1.880615 -0.043422 -0.377108 0.135304 -0.039138 +-0.128887 1.599503 0.116906 -9.435866 -8.336448 -9.044202 1.072722 -0.350759 -17.867008 -1.701352 -0.055423 -1.565981 -0.570078 0.044278 -0.202251 0.739645 0.484156 0.699613 9.642530 6.390440 0.401400 20.297215 -5.556819 37.873341 -0.471934 0.105642 0.053451 0.223669 -0.227152 0.241272 -0.511208 6.070325 9.962725 0.767912 5.388580 9.476942 1.170743 6.043721 9.625716 5.392399 -2.009586 11.325860 3.590637 2.672496 -19.259977 -13.122442 -4.297865 -9.679485 -31.407284 -15.839343 -2.294109 4.222370 -20.115103 -3.025065 0.243795 -0.190079 0.785190 6.907000 2.738156 -3.273437 29.183681 4.394856 -3.306818 3.386668 3.407023 -0.105924 -0.373941 0.129223 -0.029048 +-0.125459 1.596927 0.107509 -9.579888 -12.482688 -8.710219 3.218583 0.164389 -18.823792 -2.294463 -0.039032 -0.200836 -0.598475 0.079064 -0.198656 0.732407 0.456978 0.723299 9.919378 7.204762 -0.242160 19.012878 -4.946747 39.071743 -0.475799 0.115121 0.048912 0.220032 -0.218750 0.240670 -0.197150 6.413641 10.692559 1.198683 5.700399 9.260411 1.581454 6.399115 9.084744 4.879220 -0.716920 11.851513 2.745705 3.679646 -19.395247 -14.985984 -5.263210 -9.868348 -34.493706 -16.091789 -2.213836 2.355788 -18.341587 -2.734648 0.228040 -0.232483 0.813469 8.582987 3.859685 -4.011241 30.194662 5.973421 -3.219791 5.035597 4.872182 -0.108568 -0.381901 0.153516 -0.057304 +-0.122777 1.593364 0.097888 -9.621915 -16.257168 -8.492223 5.581728 0.548239 -20.448727 -3.441711 0.032108 2.765704 -0.649798 0.130821 -0.215174 0.719918 0.422466 0.749807 10.243298 7.870256 -0.881705 17.446238 -4.341547 40.453072 -0.475809 0.117225 0.036306 0.219003 -0.215250 0.248608 -0.015302 6.352480 11.665519 1.357820 5.650978 9.115265 1.721152 6.421092 8.623117 4.457086 0.846030 12.155046 1.287119 5.082987 -20.030216 -17.033148 -6.029000 -10.108616 -36.442879 -16.019316 -2.198514 0.349033 -17.851665 -2.506887 0.191687 -0.277205 0.846225 10.546683 5.033948 -5.614567 31.639616 8.637599 -3.017914 5.724503 4.252343 -0.080797 -0.403582 0.184758 -0.088853 +-0.119298 1.590476 0.089459 -9.481879 -19.985016 -8.062796 7.796534 0.922420 -22.435055 -4.939568 0.209307 6.174063 -0.666812 0.146424 -0.223765 0.715919 0.420337 0.742581 10.370801 8.495475 -1.841652 15.481376 -3.582494 41.885983 -0.477879 0.133934 0.034691 0.222963 -0.202073 0.244527 0.551531 6.038683 12.324843 1.319908 5.570701 8.872602 1.483746 6.370450 8.112102 2.867787 3.224009 13.106088 1.354752 5.982525 -20.309654 -17.359308 -6.610505 -9.838503 -39.501263 -15.943443 -2.191265 -0.601712 -17.903221 -2.519135 0.184742 -0.308019 0.863673 12.392279 6.264670 -7.094346 34.072922 11.061261 -2.913743 5.914622 3.737904 -0.079236 -0.407806 0.217524 -0.100409 +-0.114489 1.587427 0.081975 -9.274545 -23.175203 -7.785938 10.007998 1.131527 -24.849091 -7.023811 0.599764 11.149457 -0.670079 0.126128 -0.241967 0.755516 0.456824 0.790589 10.364804 8.819472 -2.587156 13.743673 -2.977644 42.937664 -0.504013 0.154947 0.017147 0.238442 -0.243901 0.249530 1.156577 5.539341 13.141547 1.230909 5.455766 8.570706 1.167110 6.250221 7.549374 1.922059 5.131760 14.335105 0.781624 7.218653 -20.829351 -18.412113 -7.918836 -9.608155 -42.011936 -16.222061 -2.262578 -0.726578 -18.261301 -2.653229 0.212447 -0.302836 0.886735 13.953840 7.823244 -8.118277 36.925816 13.004215 -2.746341 5.865743 3.119009 -0.091559 -0.395417 0.217486 -0.086116 +-0.108896 1.585175 0.074137 -8.762495 -25.924629 -7.754950 12.031774 1.131276 -27.485889 -9.645499 1.328093 17.197067 -0.687709 0.119248 -0.266042 0.790041 0.496253 0.813684 9.943075 9.045139 -3.406051 12.187231 -2.537788 44.153786 -0.521947 0.165835 0.006951 0.262374 -0.262313 0.254600 1.589427 5.226251 13.705013 1.158972 5.452733 8.432469 0.979250 6.246717 7.334709 1.036815 6.983210 15.751721 0.984053 8.138221 -21.077276 -19.032856 -10.142715 -9.630461 -44.503723 -17.551111 -1.831762 -1.091477 -17.844158 -2.690248 0.223094 -0.304052 0.905518 16.070225 9.397329 -8.833432 38.891705 14.483012 -2.578414 5.835265 2.930105 -0.111479 -0.401666 0.223817 -0.077578 +-0.102291 1.584762 0.066295 -7.816001 -28.115036 -8.147283 13.419366 0.693598 -29.869659 -12.206682 2.305882 23.625994 -0.696405 0.056317 -0.297852 0.873517 0.614997 0.858728 8.771408 9.046077 -4.187751 11.085727 -2.365952 45.094135 -0.574014 0.196291 -0.001958 0.317981 -0.319456 0.255461 1.554944 5.041385 14.371879 1.189048 5.416692 8.521784 1.147369 6.143015 7.442298 -0.194363 8.499720 17.237143 0.886822 8.808413 -22.982040 -19.039608 -12.887521 -9.880662 -47.570629 -19.674337 -0.998168 -1.062973 -16.635492 -2.707341 0.277885 -0.302164 0.934549 17.732674 11.242092 -9.265613 40.413792 15.682255 -2.383039 6.131542 3.302848 -0.129522 -0.402671 0.227531 -0.042700 +-0.096361 1.585719 0.060169 -6.691835 -30.089706 -8.750011 14.670211 0.031095 -31.673883 -14.979071 3.596771 29.695944 -0.718236 0.024334 -0.335466 0.932299 0.690109 0.911402 7.233939 8.810682 -4.688260 10.272268 -2.388019 45.652504 -0.609610 0.214794 -0.014848 0.356029 -0.372964 0.264123 1.305026 4.891948 14.583576 1.154468 5.291867 8.657742 1.334564 5.993772 7.777369 -0.631232 9.540623 18.960327 0.130144 9.759798 -24.206102 -19.518185 -15.832146 -10.050529 -49.407986 -21.665363 -0.200329 -1.556772 -16.551971 -2.694484 0.300610 -0.307333 0.961227 19.362965 13.120638 -9.314664 41.827682 16.515898 -2.339788 6.624511 4.969577 -0.176897 -0.410893 0.233801 -0.019914 +-0.091084 1.587793 0.055731 -5.477449 -32.075066 -9.677759 15.671294 -0.764595 -32.850010 -17.560083 5.196311 35.689594 -0.738064 0.006293 -0.366415 0.974487 0.741309 0.969742 5.625000 8.470283 -4.934976 9.352080 -2.374818 46.169750 -0.639899 0.225438 -0.028207 0.380821 -0.420701 0.278680 0.932556 4.851438 14.410307 1.086872 5.197838 8.903420 1.533651 5.888756 8.391475 -0.234748 10.003583 20.866310 -1.149614 10.969938 -25.009699 -20.286894 -18.609407 -10.178786 -50.358410 -23.728495 0.546397 -2.814398 -17.875938 -2.616239 0.304100 -0.318012 0.982428 20.621862 14.892151 -9.138578 43.287216 17.228731 -2.406753 7.340977 7.993001 -0.253480 -0.419112 0.238936 -0.002798 +-0.085057 1.592329 0.050931 -4.275481 -34.218761 -10.699747 16.894588 -1.436849 -33.462967 -20.510601 7.126741 40.893337 -0.768753 0.000108 -0.398985 0.997171 0.765775 1.027212 4.422439 8.145576 -5.102117 7.808385 -1.992654 46.386856 -0.658558 0.243981 -0.047508 0.397433 -0.464001 0.280237 0.548574 4.702779 14.729568 0.978264 5.056152 9.099132 1.566480 5.795266 8.751904 0.091444 10.723618 22.479464 -2.354585 12.248425 -26.003216 -21.443880 -21.453941 -10.138045 -50.662258 -25.681345 1.116512 -3.489121 -19.547783 -2.630942 0.300990 -0.345499 1.008927 22.205805 16.651075 -9.074614 43.962494 18.337772 -2.364227 8.833105 11.021660 -0.203839 -0.423237 0.258786 -0.003379 +-0.078346 1.599664 0.046437 -1.882970 -36.433475 -12.618097 16.977129 -2.366022 -33.195255 -23.068577 9.127148 45.066254 -0.826644 0.006783 -0.446866 1.016415 0.779554 1.082392 2.403907 7.729887 -4.978648 5.499464 -1.208755 46.202560 -0.680634 0.256667 -0.071243 0.415049 -0.514808 0.288189 -0.894960 5.008406 14.773674 0.728998 4.814317 9.539832 1.880666 5.625733 9.502871 0.481985 11.132852 24.406157 -3.963163 13.447228 -27.493416 -21.919958 -24.452873 -9.874481 -50.519382 -27.605021 1.394769 -3.481914 -22.680683 -2.919984 0.293171 -0.381413 1.057725 23.551392 19.155375 -8.678759 44.427933 19.475800 -2.534384 10.078039 14.917957 -0.136241 -0.443249 0.286654 -0.014468 +-0.071652 1.607935 0.042837 0.238823 -39.238861 -14.378939 17.246164 -2.741065 -32.197899 -25.600136 11.241257 48.281536 -0.828927 -0.003474 -0.459932 1.046581 0.800791 1.133092 0.858499 7.428174 -4.730891 3.079095 -0.211007 45.367607 -0.697090 0.261287 -0.081477 0.423085 -0.556403 0.300455 -1.830559 5.288857 14.921275 0.611014 4.816435 9.875745 2.063020 5.651507 9.983761 0.213365 11.375553 25.710402 -5.501446 14.038312 -27.795765 -22.714998 -26.952948 -9.265451 -49.609154 -29.469955 1.793366 -5.268327 -26.537363 -2.625034 0.303896 -0.376783 1.066818 24.831026 21.618864 -8.144290 43.932644 20.646214 -2.517233 12.358344 18.527437 0.213746 -0.438089 0.275954 0.001273 +-0.064304 1.616068 0.039404 1.876936 -41.408436 -15.453056 17.315481 -3.309673 -31.762228 -27.458036 13.012508 51.162342 -0.853230 0.017257 -0.470488 1.040103 0.791094 1.137349 -0.158021 6.884166 -4.704592 0.910457 0.515511 44.064404 -0.694193 0.252056 -0.086085 0.427463 -0.553359 0.303073 -2.211656 5.232605 14.399217 0.448939 4.656695 10.410739 2.072017 5.548632 10.922960 0.120679 12.149110 26.049734 -6.363546 14.769971 -28.047478 -21.885748 -28.814566 -8.885612 -49.217857 -31.430677 2.167693 -6.195895 -32.240715 -2.587411 0.283281 -0.386881 1.072084 25.270052 23.226330 -8.199663 44.350948 22.273361 -2.195814 15.428885 21.894342 0.860539 -0.452317 0.280859 -0.011759 +-0.056314 1.624918 0.036065 3.008605 -43.793907 -16.128222 17.358213 -3.807299 -31.181992 -28.127312 14.355082 54.328346 -0.875380 0.030412 -0.478622 1.045152 0.801579 1.140562 -0.503042 6.345408 -4.653802 -1.238565 1.208363 42.467804 -0.696775 0.241634 -0.084501 0.439878 -0.545771 0.308435 -1.805209 4.923957 13.687533 0.194250 4.627897 11.082767 1.639677 5.581228 12.179871 0.086009 13.153048 25.982771 -7.032184 15.516168 -28.798433 -20.668625 -30.623541 -8.528894 -48.476280 -33.652847 2.571884 -6.499969 -39.004627 -2.637658 0.265644 -0.395420 1.076154 25.220594 24.555351 -8.555973 45.347664 24.207422 -1.781312 18.345381 25.557941 1.650612 -0.470212 0.284291 -0.019050 +-0.047591 1.634810 0.032969 4.000474 -46.216972 -16.110279 17.041389 -4.012347 -30.829884 -27.407703 15.105681 57.414116 -0.887821 0.055647 -0.475868 1.036110 0.781297 1.144281 -0.706903 5.986824 -5.174107 -3.264966 1.854724 40.227932 -0.678233 0.208492 -0.083553 0.442425 -0.537517 0.310133 -1.355690 4.766460 12.246209 0.064123 4.615983 11.587502 1.463282 5.535231 13.488696 0.044245 13.203000 25.498465 -8.423624 15.900200 -28.055286 -19.438356 -31.717064 -8.047983 -47.874111 -35.727654 3.130935 -5.793884 -45.148911 -2.987562 0.240502 -0.379545 1.054626 24.315844 26.448877 -8.999475 46.777725 26.329975 -0.899163 20.277107 27.449997 2.255914 -0.482816 0.254171 -0.031246 +-0.039194 1.644537 0.030353 4.618347 -47.894962 -15.853466 15.937125 -4.265170 -30.084673 -25.190874 14.861521 60.253738 -0.912246 0.125652 -0.456237 1.006235 0.737047 1.116181 -0.879146 5.668768 -5.506497 -4.686450 2.204998 37.523163 -0.653045 0.161770 -0.074532 0.440689 -0.471368 0.322588 -0.624978 4.708740 10.677910 0.049026 4.637609 12.178946 1.260018 5.524060 14.939481 0.318657 13.213214 24.626966 -8.532291 16.065853 -26.863483 -17.165804 -32.795708 -7.951488 -47.850529 -38.542503 4.630060 -4.767030 -50.241539 -3.444657 0.179878 -0.383156 1.032963 22.603704 27.744493 -9.898866 47.679058 28.825258 0.351815 22.340576 29.293272 3.080029 -0.514913 0.238386 -0.062805 +-0.031372 1.653947 0.028506 4.788627 -49.274307 -15.089492 14.558990 -4.433570 -29.314163 -22.124289 14.005825 63.133274 -0.924392 0.175187 -0.438430 0.987270 0.716609 1.096602 -0.808694 5.284151 -5.709283 -5.983040 2.418431 33.917595 -0.626072 0.105059 -0.069825 0.452400 -0.421861 0.330248 0.304352 4.579569 8.491406 0.017570 4.591809 12.866518 1.035248 5.328427 16.938099 0.759341 12.989155 23.195707 -9.210006 16.262569 -25.678915 -14.440363 -33.361832 -8.051211 -47.944576 -41.797501 6.582096 -2.172716 -55.054985 -4.706615 0.125628 -0.361458 0.986659 20.547213 28.646639 -11.131923 49.223793 31.833120 1.986602 23.129206 31.748959 3.673123 -0.540090 0.195796 -0.082153 +-0.024065 1.662104 0.027525 4.892838 -50.037384 -14.225322 12.903289 -4.695079 -28.256201 -18.902647 12.606822 65.083183 -0.925088 0.253884 -0.412462 0.926391 0.644968 1.054169 -1.135631 4.860869 -5.757716 -6.393168 2.246193 30.598225 -0.577139 0.020560 -0.068196 0.435293 -0.348041 0.354351 0.982351 4.503106 6.147602 0.095033 4.374615 13.454057 1.047192 4.932051 18.879015 1.807042 12.452356 21.543949 -10.254242 16.826929 -23.443832 -11.566036 -33.395061 -8.345017 -48.071400 -45.383736 9.172027 0.914795 -58.477112 -6.211321 0.032111 -0.325246 0.915370 17.950436 28.770397 -12.194605 50.850979 34.642761 3.826443 24.424410 36.040520 4.733373 -0.563204 0.142196 -0.103941 +-0.017412 1.669361 0.026867 4.567204 -50.538330 -13.126105 11.204014 -4.747783 -26.838512 -15.149994 10.656993 66.579414 -0.955702 0.338249 -0.397941 0.896324 0.602005 1.037689 -1.304852 4.599656 -5.750942 -6.092016 1.940378 27.872324 -0.541907 -0.065016 -0.068236 0.442993 -0.283998 0.381872 1.818287 4.337660 3.753734 0.135362 4.067211 14.070420 0.972161 4.424769 21.120447 2.898300 12.165617 19.755478 -11.424712 17.272381 -22.140577 -7.813501 -32.500191 -9.049336 -48.975452 -48.780499 11.931283 7.332956 -61.042088 -10.123203 -0.059005 -0.298473 0.863049 14.149646 28.324905 -13.783198 53.313660 38.319782 6.839855 24.272905 40.452888 5.504963 -0.606896 0.087924 -0.130276 +-0.011168 1.675229 0.025576 4.297440 -51.116196 -12.040836 9.675473 -4.519208 -24.997295 -11.616341 8.511946 66.435524 -0.962903 0.379689 -0.370564 0.886650 0.604063 1.012242 -1.389569 4.485321 -5.933987 -5.458545 1.680303 25.809126 -0.510909 -0.126777 -0.052937 0.470299 -0.222756 0.380826 2.431949 4.417589 1.790206 0.288639 4.008914 14.463243 1.102686 4.126750 22.880022 3.484895 12.243679 17.819023 -11.681596 17.269367 -21.005154 -4.042046 -31.650074 -9.746116 -50.608727 -51.772160 14.626603 15.499710 -60.727291 -15.139826 -0.112405 -0.276126 0.800831 11.013492 27.429026 -14.641417 54.557671 41.780724 9.835437 22.937544 46.543819 6.112786 -0.636364 0.035755 -0.149238 +-0.005414 1.678984 0.024539 4.361744 -51.434917 -11.054779 7.878354 -3.735228 -23.162697 -7.941105 6.429951 65.177292 -0.949777 0.437757 -0.329240 0.861100 0.597817 0.944796 -1.804626 4.502451 -6.149775 -4.466592 1.429586 23.820765 -0.463412 -0.216011 -0.034420 0.493983 -0.121902 0.390823 2.997385 4.571626 -0.257583 0.370569 4.035855 14.711700 1.023057 3.951723 24.626509 3.914071 12.578932 15.228978 -11.110199 16.875650 -18.752180 -0.743901 -30.664396 -10.028459 -52.518311 -55.049278 18.219839 24.426231 -60.330238 -20.521482 -0.187869 -0.222364 0.699917 8.055830 26.482649 -14.916796 54.994991 46.488121 13.880345 15.687236 53.654606 3.903935 -0.666761 -0.038188 -0.158363 +-0.000172 1.680230 0.024026 3.871042 -52.003544 -9.528176 6.709861 -2.892868 -20.983067 -4.907027 4.673044 62.769791 -0.954610 0.534384 -0.294666 0.822020 0.562186 0.882944 -1.723489 4.555834 -6.583753 -3.497004 1.180878 22.104990 -0.413836 -0.329201 -0.024414 0.506356 -0.010320 0.427512 3.750002 4.468297 -2.291674 0.330457 3.861936 14.705108 0.769654 3.718451 26.160660 4.599025 13.089343 12.731689 -11.231078 17.006748 -16.437872 2.541770 -28.768927 -10.236218 -55.160057 -57.955772 22.532944 33.399292 -59.995354 -26.060850 -0.301763 -0.163693 0.600793 4.048083 25.138454 -15.242782 57.143761 51.430218 19.309547 2.892658 58.712181 -2.700378 -0.714362 -0.116505 -0.171942 +0.005392 1.680276 0.023413 3.245795 -52.347149 -8.080647 5.777129 -2.232229 -18.337067 -2.540280 3.240963 59.102299 -0.965928 0.613875 -0.258828 0.786637 0.532197 0.849030 -1.567415 4.424007 -6.680613 -2.641161 0.928540 19.995281 -0.369216 -0.409351 -0.008863 0.520865 0.082009 0.440413 4.445382 4.289368 -3.820657 0.398321 3.613709 14.689941 0.682775 3.432298 27.302216 4.940606 13.312265 10.404421 -11.891983 17.157036 -14.969582 5.120941 -26.997736 -10.015025 -56.990723 -60.259449 26.320190 43.209087 -60.279366 -32.511528 -0.399214 -0.149394 0.521621 0.246590 24.085421 -15.501101 58.610477 55.349571 24.087618 -9.708085 61.525383 -10.294286 -0.753909 -0.165854 -0.198434 +0.010149 1.678629 0.022622 2.580691 -52.641598 -6.906631 5.184370 -1.621103 -14.734839 -0.888774 2.226668 54.012791 -0.958989 0.669210 -0.238241 0.763504 0.529607 0.816491 -1.240811 4.195116 -6.455062 -2.224697 0.781500 17.749666 -0.338735 -0.486533 -0.007768 0.538846 0.153963 0.468239 5.080504 4.268611 -5.177485 0.521450 3.463481 14.743793 0.583985 3.059003 28.372547 5.678744 13.514594 8.482979 -12.038959 17.624033 -13.800121 7.956075 -25.593958 -9.929939 -56.198639 -63.232788 29.245718 51.822342 -58.840752 -37.121258 -0.487091 -0.106499 0.436747 -2.841308 22.841391 -15.862072 60.078983 58.608681 28.536282 -20.106514 61.781517 -16.742739 -0.780824 -0.222018 -0.197245 +0.015749 1.675964 0.022060 1.446637 -52.762737 -5.367519 5.059177 -1.391165 -10.710621 0.018047 1.433262 47.472149 -0.977717 0.731497 -0.225167 0.720070 0.485519 0.777411 -0.809864 3.966638 -6.352109 -2.113040 0.665520 15.869721 -0.305485 -0.549534 -0.004019 0.538197 0.215648 0.482522 5.767570 3.989911 -6.267773 0.639618 3.058176 14.700214 0.619620 2.579630 28.883720 6.159400 13.960284 7.362110 -12.458116 18.283043 -12.751431 10.052903 -24.351517 -9.480057 -53.699905 -64.759018 29.512980 58.553856 -56.511219 -40.093899 -0.560956 -0.092764 0.394651 -6.371673 21.826117 -16.047449 60.999523 61.296791 32.375477 -28.739771 61.659569 -22.103241 -0.812228 -0.251972 -0.224097 +0.021230 1.672387 0.021870 0.313755 -52.490204 -3.947927 4.938060 -1.299505 -6.705627 0.775312 0.735472 40.713821 -0.969301 0.772447 -0.194572 0.698240 0.467648 0.746544 -0.394179 3.708625 -6.110442 -1.957030 0.565109 14.122602 -0.279853 -0.608436 0.003066 0.544972 0.274963 0.493684 6.583023 3.607448 -7.297063 0.777250 2.633056 14.704673 0.659450 2.071916 29.388580 6.446123 14.108173 6.241909 -12.469319 18.545872 -11.315546 11.498991 -23.173052 -8.540711 -50.360516 -65.460114 28.249987 66.244225 -53.850945 -43.499607 -0.610585 -0.062093 0.339693 -10.072805 20.962786 -16.156094 60.228111 63.554401 34.681648 -37.216831 61.106831 -27.350290 -0.827337 -0.300907 -0.235957 +0.026940 1.669161 0.022387 -1.309960 -50.965702 -2.402592 5.175356 -1.478482 -2.685783 1.809810 -0.111490 33.517467 -0.961846 0.803516 -0.183226 0.676091 0.450051 0.720657 0.021776 3.442335 -5.737654 -1.272760 0.363422 12.778367 -0.264133 -0.651729 0.003701 0.540997 0.309819 0.515863 7.776382 2.774622 -8.128393 0.951592 1.749423 14.789710 0.656776 1.213658 29.835453 6.426330 14.210180 5.425530 -12.987343 18.695934 -10.650862 11.861858 -22.243177 -7.641180 -47.053417 -65.694344 26.514828 71.933510 -51.484486 -45.556492 -0.654173 -0.038133 0.300737 -12.953259 19.873320 -16.167242 58.951290 65.573540 36.233543 -44.506298 60.223156 -31.614584 -0.837967 -0.328028 -0.232760 +0.033442 1.665166 0.022756 -2.831777 -49.371227 -0.856844 5.602200 -1.604262 0.739984 3.104707 -0.801787 26.816574 -0.944391 0.822720 -0.162772 0.665852 0.444867 0.702334 0.268972 3.304372 -5.801988 -0.497117 0.202136 11.966423 -0.246493 -0.682495 0.009563 0.543759 0.344848 0.522821 8.932507 1.857474 -8.854094 1.053901 0.813424 14.744324 0.536229 0.242072 30.082453 6.469250 14.160932 4.716728 -12.887718 18.627659 -9.715234 11.906597 -21.417625 -6.675105 -44.719986 -65.960693 25.528608 77.199326 -49.268978 -47.273605 -0.682575 -0.014174 0.256794 -15.117030 18.801651 -16.190924 58.871418 67.275948 38.253052 -49.385948 58.973614 -34.156399 -0.840701 -0.358036 -0.229551 +0.040883 1.661356 0.022219 -3.789623 -47.718605 0.243229 5.992908 -1.589058 3.621816 3.787888 -1.090564 20.618830 -0.964842 0.858817 -0.154754 0.645432 0.425519 0.680821 0.050851 3.428034 -6.595347 0.510630 0.033225 12.253393 -0.233086 -0.715098 0.009229 0.550480 0.381367 0.525954 9.625408 0.879968 -9.279586 1.091767 -0.226128 14.730681 0.445644 -0.853653 30.219864 6.392773 14.505769 3.931043 -13.087815 18.835524 -9.332656 12.099916 -20.844944 -6.184596 -40.841709 -66.085686 23.457973 80.984131 -47.533329 -48.129200 -0.718396 -0.016723 0.242627 -16.214434 17.959436 -16.351107 59.169277 69.208435 40.529335 -52.380905 57.442654 -35.167660 -0.861407 -0.370403 -0.252081 +0.048134 1.658715 0.021145 -4.114263 -46.526340 0.768420 6.077905 -1.426612 6.019614 4.207882 -1.172302 15.388182 -0.975140 0.885805 -0.149485 0.645791 0.427648 0.698457 -0.542137 3.532210 -7.431653 1.385947 -0.112376 12.560043 -0.226389 -0.739483 0.003196 0.564623 0.395839 0.535510 9.543374 0.233090 -9.648150 1.246564 -0.986023 14.809028 0.725695 -1.763279 30.628012 6.600634 14.256324 3.307508 -13.710839 18.911345 -9.298841 12.732289 -19.973492 -6.519726 -38.631401 -67.696899 23.152399 80.889015 -45.741447 -46.305912 -0.753440 -0.017552 0.219062 -17.137726 16.946499 -16.522482 59.544132 70.997849 42.608353 -55.432217 55.552082 -36.067253 -0.873225 -0.388853 -0.257990 +0.055340 1.657464 0.020759 -4.566462 -45.609764 1.454927 6.405031 -1.199720 7.733717 4.191383 -1.094135 11.088933 -0.992532 0.917020 -0.145568 0.636329 0.416415 0.697439 -0.942615 3.576872 -8.171201 2.072731 -0.253487 12.510178 -0.216528 -0.763465 0.004822 0.570931 0.418819 0.542791 9.632628 -0.336958 -9.938972 1.325083 -1.658846 14.787740 0.885473 -2.586810 30.807547 6.838702 14.095219 2.803681 -14.081438 18.978403 -9.149955 12.765807 -19.520563 -6.676977 -36.691902 -68.672310 22.575163 80.770302 -44.505062 -44.939026 -0.789069 -0.023248 0.205625 -17.390558 16.595470 -16.580105 61.515057 72.139572 45.213779 -56.794827 53.990479 -36.097549 -0.893428 -0.397582 -0.270697 +0.061823 1.657421 0.020226 -4.448292 -45.172607 1.775614 6.603162 -0.842956 8.960481 3.519059 -0.881249 7.358668 -1.002064 0.928626 -0.132967 0.648525 0.432218 0.700545 -1.366270 3.568439 -8.801847 2.040270 -0.265983 12.231169 -0.217740 -0.772941 0.017745 0.587647 0.440070 0.540895 9.359339 -0.615042 -10.195879 1.330779 -1.990932 14.762650 0.993268 -3.045335 30.958542 7.037008 13.999804 2.575595 -13.990031 18.902618 -9.162629 12.861414 -19.338072 -6.997868 -36.704880 -69.690643 23.087234 79.349464 -43.535240 -43.198849 -0.798091 -0.034187 0.201807 -16.809072 16.337109 -16.476202 63.666771 72.694939 47.586052 -57.554092 53.302601 -36.181171 -0.909447 -0.403617 -0.280776 +0.069315 1.658577 0.020420 -4.524076 -45.471512 2.415572 6.684500 -0.525990 9.548419 2.799656 -0.689551 4.551904 -0.998985 0.917826 -0.125861 0.647533 0.435453 0.706568 -1.552945 3.579619 -9.558947 1.619832 -0.219466 11.813200 -0.221203 -0.750366 0.023462 0.587641 0.438556 0.524521 9.622713 -0.744724 -10.239721 1.259315 -2.083407 14.659130 0.779097 -3.142443 30.788919 7.092689 13.957775 2.779118 -13.979992 18.911421 -9.485190 12.599025 -19.564396 -7.049825 -37.936455 -69.937202 23.966663 78.551476 -43.408169 -42.624744 -0.784627 -0.061749 0.212402 -16.565708 16.180525 -16.328308 65.363434 72.428841 48.807285 -58.076004 53.666645 -36.776566 -0.900515 -0.383453 -0.289668 +0.076758 1.661002 0.020701 -4.128090 -45.772118 2.760961 6.582593 -0.288415 9.202554 1.806580 -0.502180 3.280814 -1.007232 0.934264 -0.125298 0.618597 0.400284 0.699762 -1.928900 3.487741 -10.127186 0.726737 -0.150823 10.941847 -0.214101 -0.738840 0.025129 0.568147 0.448070 0.520274 9.418840 -0.749399 -10.224453 1.178980 -2.105778 14.525285 0.775315 -3.132056 30.578533 7.119805 13.919209 2.932585 -14.344238 19.053808 -9.693613 12.580996 -20.104471 -7.008117 -41.190720 -69.969582 25.981901 78.363060 -43.288658 -42.714020 -0.801493 -0.093635 0.223122 -16.251534 16.404156 -16.139996 67.353638 71.347771 49.360287 -58.352673 54.922142 -37.832985 -0.901637 -0.353418 -0.304566 +0.084481 1.663012 0.022346 -4.153297 -46.296391 3.781082 6.706800 -0.174174 8.164332 0.664245 -0.338887 2.763365 -0.968317 0.904292 -0.121538 0.613074 0.398732 0.685733 -2.018538 3.354179 -10.796198 -0.126673 -0.113046 9.494903 -0.217796 -0.735774 0.029467 0.544810 0.431228 0.531432 9.976312 -0.604007 -10.213030 1.122508 -1.857118 14.020645 0.699111 -2.880503 29.795309 6.919830 13.569256 3.437332 -14.687613 19.020651 -9.391164 12.138350 -20.374187 -6.631380 -48.149910 -69.667625 30.390884 77.630547 -43.134418 -42.613262 -0.782190 -0.067446 0.212994 -15.813344 16.263140 -15.958813 70.225433 69.319916 49.998711 -56.459789 57.044991 -37.963970 -0.879355 -0.360009 -0.274940 +0.092828 1.664948 0.023470 -3.928795 -46.267166 4.502756 6.428177 -0.230351 6.592460 0.199388 -0.289583 3.161477 -0.936374 0.874512 -0.119686 0.626233 0.424233 0.686618 -2.211951 3.086046 -11.023399 -1.190971 -0.081117 7.473042 -0.226323 -0.730708 0.036597 0.541421 0.414474 0.540792 10.648317 -0.454686 -10.119455 1.047008 -1.567978 13.704820 0.487235 -2.615505 29.267078 6.617688 13.330579 3.289179 -15.048615 18.882923 -9.547975 11.276918 -20.780516 -6.425837 -53.815285 -69.043030 33.721661 77.028404 -43.968567 -43.241825 -0.766231 -0.046558 0.197844 -14.653196 16.206802 -15.984611 71.905121 67.237083 49.336391 -53.345303 59.163342 -37.195278 -0.865278 -0.367869 -0.244182 +0.099870 1.666099 0.024730 -3.136998 -46.390316 4.714163 5.770554 -0.289849 4.999285 -0.387645 -0.227076 3.891324 -0.933112 0.862783 -0.114195 0.628699 0.422997 0.684465 -2.971613 2.695870 -11.014588 -1.807122 -0.127723 5.261276 -0.230353 -0.710394 0.043340 0.536817 0.410120 0.528214 10.550545 -0.095100 -10.051905 0.981614 -1.129025 13.418004 0.567488 -2.125025 28.658171 6.289466 13.210185 3.521309 -14.803766 18.554222 -9.669437 10.998502 -21.039623 -6.738458 -60.729252 -67.804482 37.449417 73.295395 -45.765530 -42.805649 -0.743066 -0.061895 0.214802 -12.756871 16.009085 -15.728785 72.112259 64.787239 47.309265 -49.490715 62.374615 -36.256721 -0.857743 -0.352462 -0.248829 +0.106090 1.666301 0.026731 -3.135434 -46.986843 5.377173 5.519662 -0.344492 3.658340 -1.161456 -0.143338 4.655225 -0.925148 0.801436 -0.138361 0.680590 0.482693 0.714220 -3.008521 2.466415 -10.979682 -2.571390 -0.128521 3.314441 -0.258659 -0.674429 0.033636 0.555778 0.347898 0.518019 11.077219 0.304370 -9.943113 0.911144 -0.610080 13.158225 0.347211 -1.585290 28.096113 5.962961 13.161081 4.155705 -14.352313 18.135397 -10.577666 10.876793 -20.990904 -7.267356 -67.501236 -66.295486 41.076885 68.054977 -48.515629 -41.867592 -0.674972 -0.044893 0.243331 -11.143422 15.545979 -15.801326 74.072563 62.349815 46.512150 -42.419422 64.815987 -32.580124 -0.838154 -0.351920 -0.220728 +0.112873 1.665753 0.028751 -3.017461 -47.034439 5.605857 5.282553 -0.456198 2.190993 -2.010683 -0.033410 6.026423 -0.915196 0.757858 -0.156570 0.691256 0.499767 0.715842 -3.337122 2.261250 -10.816745 -2.958837 -0.162566 1.978839 -0.277146 -0.634447 0.021719 0.550111 0.306414 0.506944 11.473438 0.529531 -9.672609 0.867118 -0.299386 13.043264 0.141956 -1.211992 27.429104 5.563430 13.129786 4.750746 -13.919151 17.716015 -11.302094 10.442020 -21.725042 -7.825304 -70.046265 -64.170631 40.751312 61.536026 -51.899170 -40.211170 -0.625531 -0.050168 0.273576 -9.282664 15.843668 -15.935754 73.889618 59.597332 43.284920 -31.042006 66.623177 -25.413580 -0.813509 -0.325952 -0.205116 +0.118637 1.664638 0.030244 -2.495398 -47.147263 5.546171 4.835598 -0.621972 0.556280 -3.121597 0.136987 7.777357 -0.902756 0.724637 -0.162514 0.685891 0.477446 0.721941 -4.096847 2.062710 -10.849076 -3.036463 -0.223883 0.992493 -0.287030 -0.588382 0.025372 0.518753 0.268736 0.493044 10.841722 0.522071 -9.321322 0.820394 -0.269371 12.876479 0.374337 -1.066074 26.485256 5.411653 13.156612 5.820654 -13.811643 17.776464 -11.664165 9.143945 -22.260668 -8.141236 -71.421997 -61.269115 38.767235 52.778831 -55.450920 -36.906933 -0.577676 -0.068979 0.317975 -7.361797 16.529169 -15.911528 73.812050 56.629707 39.688011 -17.302402 66.768982 -16.052586 -0.788626 -0.290607 -0.202831 +0.124011 1.662777 0.031547 -2.037565 -47.591949 5.415448 4.425879 -0.777078 -0.847201 -4.249456 0.337114 9.440880 -0.870760 0.671123 -0.169189 0.701285 0.482105 0.756035 -4.823535 1.944576 -11.127158 -2.877724 -0.268732 0.464964 -0.312754 -0.533135 0.023128 0.490767 0.208162 0.489862 9.686991 0.588235 -8.906542 0.920222 -0.218365 12.797845 1.038319 -0.995882 25.654694 5.434700 13.081088 7.084601 -14.084243 18.010908 -12.444237 8.137945 -22.453556 -8.675416 -72.790688 -58.218048 36.405453 41.390324 -58.006191 -31.138683 -0.518763 -0.078089 0.357650 -5.290864 17.223194 -15.896435 73.718361 53.580341 35.691223 -4.735802 64.801926 -7.590811 -0.749722 -0.261426 -0.177602 +0.130096 1.659657 0.032719 -1.599194 -47.615776 5.253868 3.936767 -1.008868 -2.273592 -5.255167 0.526702 11.173540 -0.851527 0.635296 -0.185302 0.696868 0.462706 0.779299 -5.782530 1.960593 -11.972582 -2.454888 -0.311167 1.149524 -0.338580 -0.489529 0.008743 0.451783 0.151036 0.500010 8.859654 0.416725 -8.360505 0.804848 -0.362835 12.657328 1.248595 -1.040597 24.621264 5.756118 13.107388 8.471386 -14.608809 18.523249 -13.256151 6.587135 -22.331894 -9.380278 -73.134293 -54.735966 33.103741 25.748184 -59.487988 -21.907495 -0.477792 -0.088404 0.405408 -3.620882 17.437044 -15.965688 75.112976 50.245583 32.040432 4.919071 60.777485 -1.837394 -0.716589 -0.226837 -0.157760 +0.136895 1.657153 0.033570 -1.525289 -47.352985 5.126395 3.498406 -1.336019 -3.517449 -5.589904 0.605295 12.880898 -0.828691 0.581504 -0.203737 0.686710 0.438279 0.810218 -6.341760 2.069883 -12.976401 -2.222594 -0.323506 2.569576 -0.357989 -0.428830 -0.001878 0.407752 0.076783 0.490936 8.293534 0.167247 -7.535941 0.813224 -0.585301 12.614116 1.447310 -1.184873 23.521425 6.062837 12.816745 10.041477 -15.351942 19.024492 -14.077400 4.619469 -23.113411 -10.017073 -71.529678 -51.379025 28.599667 9.291545 -58.586708 -11.682631 -0.422995 -0.112413 0.456453 -1.405983 18.109829 -15.732746 75.129906 46.434978 26.554586 11.080467 55.365620 0.890533 -0.672955 -0.181828 -0.142557 +0.143409 1.654045 0.035122 -1.447079 -46.619080 4.938597 3.089744 -1.707319 -4.562463 -5.856625 0.634827 14.411160 -0.803689 0.507842 -0.225091 0.696737 0.439189 0.852775 -6.788385 2.186548 -14.049139 -2.263346 -0.310509 4.552628 -0.389089 -0.356415 -0.008081 0.373815 -0.013550 0.478248 7.550427 -0.055913 -6.542283 1.055175 -0.835115 12.460199 2.099762 -1.391689 22.169083 6.373212 12.262589 11.831697 -16.036974 19.438776 -15.308483 3.124183 -23.787521 -10.731968 -70.668320 -48.315071 24.936066 -4.240743 -54.479362 -3.715521 -0.347205 -0.138050 0.518078 0.825440 18.053167 -15.458365 73.993095 42.185501 20.460098 15.609978 49.038227 2.242805 -0.627372 -0.135274 -0.121289 +0.149504 1.650182 0.037975 -1.462948 -45.454746 4.639722 2.957660 -2.082984 -5.279097 -6.165030 0.662631 15.945303 -0.782841 0.452228 -0.240743 0.694971 0.431214 0.870824 -7.284422 2.383875 -15.323796 -2.195810 -0.283828 7.683669 -0.409062 -0.299442 -0.011424 0.340246 -0.074252 0.466708 7.297747 -0.380790 -5.377279 1.294026 -1.106823 12.253443 2.448102 -1.498439 20.760929 6.308159 12.052160 13.019371 -16.238274 19.555813 -16.028206 0.244249 -25.022518 -10.924192 -68.617348 -45.258114 20.819571 -12.157901 -48.528503 0.207338 -0.290110 -0.160529 0.565281 3.037800 18.043905 -15.088104 71.273048 38.630581 15.268636 18.606468 43.471981 2.859676 -0.591329 -0.092149 -0.105031 +0.155486 1.646147 0.040603 -0.822508 -44.121681 3.669883 2.339354 -2.453251 -5.646589 -6.323235 0.658684 17.178185 -0.759197 0.389478 -0.259234 0.707116 0.443091 0.906007 -8.247067 2.518270 -16.659801 -2.202044 -0.232734 11.352078 -0.438053 -0.231460 -0.017038 0.314520 -0.143345 0.456366 6.283695 -0.651374 -4.055777 1.563119 -1.439776 12.040371 3.027382 -1.720565 19.457281 6.342428 11.837945 14.719854 -16.451115 19.658819 -17.063297 -3.105852 -25.975866 -10.878946 -66.261627 -42.296741 17.122465 -15.560457 -41.139008 1.300100 -0.230875 -0.190231 0.612396 5.240134 18.377724 -15.069351 68.336533 35.998730 11.358818 17.344297 35.477619 1.663156 -0.552998 -0.042976 -0.080218 +0.162589 1.641218 0.043963 -0.526689 -42.156631 3.096961 2.019501 -2.971795 -6.533850 -6.615857 0.680378 19.104445 -0.717315 0.334283 -0.259876 0.722446 0.454819 0.922395 -9.328238 2.684754 -18.373388 -1.465240 -0.298387 15.719181 -0.465424 -0.184207 -0.020246 0.289746 -0.193480 0.456953 5.969747 -0.987428 -2.639379 1.985360 -1.768169 11.528676 3.659006 -1.982298 17.828646 6.043072 11.164267 15.978730 -16.159763 19.152830 -17.022165 -6.791176 -26.318186 -10.280845 -64.828995 -39.297459 14.182349 -15.830262 -34.086334 0.930048 -0.168277 -0.189893 0.641259 7.056951 18.279985 -14.689896 65.005257 33.120468 7.947034 15.165175 28.456213 0.616273 -0.511617 -0.022493 -0.048137 +0.171212 1.636750 0.047639 -0.405854 -39.236660 2.653123 1.838215 -3.724790 -7.803119 -6.759108 0.645287 21.660698 -0.686228 0.278868 -0.257977 0.739851 0.471171 0.930936 -10.780169 2.609465 -19.950228 0.197283 -0.670253 20.128645 -0.483128 -0.129328 -0.012439 0.273504 -0.231067 0.437368 6.007480 -1.486705 -1.083374 2.573779 -2.254842 10.880698 4.430285 -2.424507 16.082211 5.199182 10.519214 17.099606 -15.341762 18.158955 -16.820065 -9.979325 -26.385277 -9.282495 -63.947819 -36.175777 11.363956 -13.223333 -28.615065 -0.279286 -0.102524 -0.205485 0.670263 8.847895 18.030476 -14.134006 61.200119 30.162346 5.056910 12.578066 21.769110 -0.101112 -0.478289 0.007417 -0.027782 +0.179873 1.631587 0.051656 -0.280909 -36.441559 2.200913 1.793572 -4.434504 -9.069856 -7.343200 0.723441 24.051542 -0.681959 0.247340 -0.263224 0.749371 0.470826 0.936671 -11.802122 2.483657 -21.586304 1.182879 -1.073035 24.508240 -0.496593 -0.087906 -0.011062 0.262516 -0.263968 0.420173 6.108651 -1.907411 0.472202 3.176996 -2.695463 10.254608 5.211618 -2.795543 14.492119 4.370212 10.061915 17.801533 -14.890090 17.281948 -16.884142 -12.154376 -25.205059 -8.618223 -63.741871 -33.114552 9.065126 -10.763738 -24.465286 -1.145176 -0.049799 -0.226170 0.710272 9.630290 16.706665 -13.765465 58.390163 27.449877 2.976409 9.903769 16.152252 -0.518547 -0.459651 0.035538 -0.026320 +0.188174 1.624521 0.056985 -0.430604 -34.172382 2.031970 2.178449 -4.988667 -10.145332 -8.686339 1.057935 26.239075 -0.649058 0.222042 -0.264935 0.732481 0.443080 0.932907 -12.446044 2.401036 -24.001551 1.969040 -1.600069 29.910732 -0.497606 -0.064112 -0.015886 0.224122 -0.293268 0.423610 6.627773 -2.420562 1.985492 3.635797 -3.087609 9.539906 5.610117 -3.091744 12.832644 3.872123 9.503442 17.847464 -15.232028 16.768122 -16.546968 -14.318172 -23.482506 -8.115184 -62.692909 -30.076515 7.002473 -9.019322 -20.322674 -1.478949 -0.023655 -0.218934 0.717353 9.636743 14.672241 -13.277026 57.031883 24.705708 1.119607 6.524127 12.321244 -0.924001 -0.427650 0.049968 -0.003955 +0.195609 1.617922 0.061400 -0.294029 -32.319698 1.308927 2.233769 -5.468419 -10.732575 -9.758977 1.383542 28.208796 -0.639850 0.192414 -0.275345 0.729107 0.431405 0.932727 -12.930139 2.362654 -26.414808 2.450257 -2.076389 35.690922 -0.501605 -0.029591 -0.020603 0.205311 -0.326625 0.409433 6.761763 -2.790942 3.965942 4.064402 -3.414850 8.906984 5.857875 -3.305818 11.231076 3.319335 9.235732 18.173372 -14.940285 16.087576 -16.600031 -16.075827 -22.279053 -7.568247 -60.280659 -26.863106 4.939161 -7.828651 -16.717510 -1.536998 0.017585 -0.228632 0.744063 9.730667 13.081980 -12.630844 55.004684 22.089293 -0.635053 3.349969 9.671106 -1.134834 -0.404504 0.074015 0.002507 +0.202246 1.612545 0.065991 -0.332635 -31.351137 0.433412 2.455002 -5.541077 -10.571746 -11.059589 1.861845 29.440784 -0.622424 0.139985 -0.273872 0.751526 0.465420 0.928432 -12.774965 2.737276 -28.874720 2.585881 -2.354895 41.719025 -0.516569 0.016297 -0.012289 0.210724 -0.352087 0.380525 7.165047 -2.848556 6.114282 4.568718 -3.356800 8.417006 6.010482 -3.167976 9.858669 2.086951 9.485168 18.477165 -14.131598 15.180103 -17.124079 -16.677940 -20.562317 -7.400714 -58.572071 -24.247978 3.575681 -6.228309 -13.320272 -1.565023 0.081132 -0.242995 0.767215 9.835015 10.827761 -12.255850 52.176533 19.710264 -1.849759 1.285018 6.732428 -1.015553 -0.381530 0.097441 0.012278 +0.208729 1.609017 0.070348 -0.464211 -30.660666 -0.433510 2.673152 -5.482160 -10.041775 -12.319407 2.337566 30.229118 -0.607982 0.110005 -0.265406 0.757847 0.476723 0.913260 -12.021896 3.301222 -31.189882 2.236186 -2.369417 46.975021 -0.521024 0.044332 -0.001557 0.210049 -0.359058 0.357662 7.702997 -2.979056 8.228499 5.045257 -3.318313 8.036686 6.023520 -3.031139 8.680167 1.071115 9.656452 18.589230 -13.518010 14.430027 -17.097666 -17.382322 -19.095917 -7.240079 -56.243767 -21.826435 2.470163 -4.387517 -9.405055 -1.462072 0.124652 -0.254522 0.780898 9.550178 8.885822 -11.754519 49.023010 17.470602 -2.685491 -0.111989 4.112675 -0.775527 -0.365014 0.112732 0.012349 +0.216400 1.608298 0.074810 -0.622758 -29.786985 -1.884700 2.283099 -5.567119 -8.806602 -12.604412 2.436697 31.018452 -0.603511 0.087460 -0.276855 0.772165 0.482783 0.923314 -10.980488 3.771713 -32.316219 2.067063 -2.423262 50.997051 -0.540236 0.074081 -0.005267 0.198972 -0.389428 0.360868 8.342907 -3.351641 10.840002 5.625210 -3.525408 7.821380 5.869770 -3.069598 7.649729 0.650808 9.776376 19.321848 -13.334396 14.028391 -17.694664 -18.402843 -18.589746 -6.502235 -52.590324 -18.987827 1.140892 -3.023208 -6.905797 -1.348025 0.161266 -0.261033 0.815077 8.239124 8.055065 -10.758518 46.048599 15.254581 -3.208683 -1.091520 1.592966 -0.432053 -0.351876 0.134838 0.025966 +0.224246 1.609083 0.079252 -0.490471 -28.952196 -3.469056 1.336498 -5.674159 -7.503947 -12.487623 2.377238 31.576254 -0.596319 0.073967 -0.277076 0.758839 0.470597 0.898235 -9.953231 4.158872 -33.392475 2.160884 -2.563747 54.342800 -0.536870 0.094891 -0.000763 0.185013 -0.389990 0.347134 9.092764 -3.841287 13.144320 5.987845 -3.720496 7.830401 5.483124 -3.105277 6.963216 -0.112324 9.898744 19.384218 -12.884274 13.345969 -17.692638 -18.561357 -17.824627 -5.743066 -49.085014 -16.278885 0.096327 -2.032188 -5.323343 -1.237794 0.181732 -0.273470 0.825958 6.876943 7.121930 -9.678952 43.083279 13.109707 -3.523948 -1.373094 -0.261948 -0.142213 -0.341089 0.158238 0.026091 +0.230682 1.609353 0.085431 -0.436278 -28.071491 -4.969201 0.564327 -5.590859 -5.618447 -12.296007 2.287382 31.611900 -0.565054 0.050457 -0.265725 0.755624 0.464298 0.898159 -8.714998 4.598945 -34.485455 2.890420 -3.011736 57.040359 -0.541519 0.113503 0.004481 0.163393 -0.405349 0.346940 9.493400 -4.334207 14.952873 6.371686 -4.018046 8.027009 5.421814 -3.286953 6.647909 -0.553955 9.605702 19.111580 -13.468595 12.933849 -17.908739 -18.282885 -16.424681 -5.016461 -46.259041 -13.834525 -0.800706 -0.769497 -4.524465 -1.174586 0.207089 -0.271248 0.826546 4.821727 5.719222 -8.709655 40.986530 11.095417 -3.899732 -1.788374 -0.786228 -0.011765 -0.316219 0.165213 0.043130 +0.237127 1.609427 0.093231 -0.599318 -26.723270 -6.319501 -0.155460 -5.561653 -3.512523 -11.891955 2.065704 31.452616 -0.538269 0.041541 -0.243085 0.716924 0.426200 0.867524 -7.456089 4.688745 -35.087532 3.938494 -3.794292 58.905201 -0.526702 0.127627 0.022362 0.131843 -0.390833 0.330828 10.296645 -5.149209 16.233130 6.656473 -4.409945 8.239621 5.156730 -3.526691 6.387286 -0.570579 9.342257 18.528896 -13.786405 12.824283 -17.583708 -17.849489 -15.090571 -4.014165 -43.565063 -11.130394 -1.708556 0.092901 -5.203298 -1.189002 0.212801 -0.291262 0.820949 2.206859 4.128012 -7.481816 39.591293 8.789874 -4.320118 -2.130549 -1.229685 0.122741 -0.297240 0.185543 0.034605 +0.242440 1.610427 0.101389 -0.562326 -25.331175 -7.786211 -0.613432 -5.551534 -1.416547 -12.094377 2.014982 31.220966 -0.499184 0.023347 -0.223791 0.705707 0.412276 0.854163 -6.194920 4.618425 -34.851822 5.294713 -4.694408 59.146061 -0.520166 0.133804 0.034584 0.107697 -0.391482 0.329902 10.691087 -5.883470 17.202353 6.916006 -4.840452 8.608887 5.060363 -3.826022 6.436947 -0.904841 8.898948 17.676657 -14.208172 12.424594 -17.389872 -17.126730 -13.202976 -3.379419 -41.052414 -8.985575 -2.369873 0.805703 -6.117474 -1.214441 0.228904 -0.273964 0.804441 -0.019672 2.095010 -6.690527 37.759525 6.905876 -4.687798 -2.427107 -1.176888 0.173994 -0.274443 0.179563 0.050153 +0.247474 1.608704 0.111796 -0.578539 -24.154449 -8.219872 -0.936901 -5.625724 -0.386215 -12.527210 2.088716 31.182953 -0.476140 0.074208 -0.178591 0.613041 0.305861 0.767077 -4.966709 4.493724 -35.246143 6.582835 -5.580624 58.713428 -0.466109 0.098409 0.059476 0.054857 -0.307502 0.320888 11.781857 -6.691152 16.796028 6.743843 -4.985833 8.706001 4.526690 -3.830220 6.383439 -0.946302 8.488519 16.003040 -14.010287 12.272089 -15.017850 -15.380864 -10.442210 -3.030805 -39.234646 -7.211109 -2.810589 0.887141 -7.536844 -1.274202 0.177573 -0.277170 0.763268 -2.506689 -0.986564 -6.003316 36.653732 4.884170 -5.199180 -2.806210 -0.854854 0.191117 -0.273786 0.178352 0.015746 +0.252133 1.607020 0.121936 -0.845942 -23.051422 -8.161213 -0.904110 -5.684957 0.332777 -12.910088 2.163808 30.980381 -0.438464 0.122539 -0.125445 0.528355 0.206529 0.692907 -3.388099 4.560627 -35.916801 7.811176 -6.331916 57.676292 -0.407796 0.055356 0.081446 0.005881 -0.220031 0.312005 13.469209 -7.611569 15.729387 6.333099 -4.948132 8.774063 3.580273 -3.743841 6.513893 -0.684379 8.281332 14.177424 -13.361083 12.441552 -12.034737 -13.373982 -7.861249 -2.796458 -37.001450 -5.968611 -2.966073 0.532695 -8.605954 -1.245934 0.122792 -0.260270 0.702529 -4.601079 -4.041925 -5.429029 34.989899 3.055854 -5.526484 -2.762016 -0.647165 0.180077 -0.265609 0.155190 -0.012598 +0.256329 1.607496 0.130513 -0.492865 -21.974169 -8.878628 -1.755484 -5.656342 1.673065 -13.018961 2.060964 30.379522 -0.421478 0.130250 -0.113707 0.496773 0.176204 0.653664 -1.826518 4.584180 -35.582439 8.616173 -6.525876 55.293709 -0.388612 0.034379 0.086310 -0.012125 -0.196096 0.314364 14.121047 -8.179625 15.231941 5.962939 -5.075099 9.090343 2.881322 -3.822383 6.937631 -0.516674 7.900000 13.028169 -13.183979 12.294391 -11.394678 -11.631428 -5.815143 -2.591468 -34.481136 -4.834396 -3.098848 0.822594 -9.827442 -1.268793 0.107955 -0.237085 0.678499 -6.267289 -6.337465 -4.952190 33.279041 1.446446 -5.851942 -3.306091 -0.368326 0.194454 -0.262062 0.141217 -0.013978 +0.261050 1.608964 0.139651 -0.057939 -21.055170 -9.571999 -2.886122 -5.544180 3.153148 -12.934644 1.891727 29.578020 -0.412060 0.138143 -0.101730 0.454554 0.137933 0.606298 -0.317278 4.589125 -34.905312 9.536028 -6.574341 51.857410 -0.360851 0.023379 0.094021 -0.029845 -0.165000 0.298523 14.652732 -8.598117 14.889610 5.710014 -5.161633 9.303292 2.307444 -3.819375 7.148376 -0.597643 7.818739 11.919141 -12.729535 12.113002 -10.746063 -10.211658 -3.756370 -2.287253 -32.548527 -3.450843 -3.383921 1.534482 -12.660777 -1.446682 0.093359 -0.232053 0.657011 -7.820265 -8.597324 -4.433678 31.078848 -0.233092 -6.131640 -4.103442 0.337223 0.192112 -0.258543 0.141679 -0.028994 +0.265390 1.610737 0.149358 0.547250 -20.791794 -10.104798 -4.250825 -5.331938 4.437512 -12.598433 1.676266 28.740479 -0.377824 0.138285 -0.083122 0.451326 0.134770 0.595281 1.284515 4.800222 -34.150448 9.944191 -6.175338 47.906193 -0.350290 0.013477 0.100568 -0.039561 -0.146735 0.306231 14.986228 -8.768910 13.744876 5.339252 -5.169948 9.657063 1.799087 -3.818850 7.960788 -0.735208 7.466435 11.453094 -12.274807 11.689947 -9.908114 -8.972543 -1.668569 -2.024903 -30.922911 -2.089892 -3.690157 2.569504 -16.170771 -1.742185 0.086264 -0.203547 0.623112 -8.537683 -10.219733 -3.942464 27.958426 -1.691526 -6.028136 -4.649889 1.120939 0.162565 -0.246776 0.121130 -0.011473 +0.269427 1.613449 0.158963 1.111168 -20.721712 -10.597591 -5.323337 -5.051171 5.654825 -12.650623 1.602666 27.833784 -0.373337 0.137735 -0.080101 0.450876 0.145043 0.576128 2.927732 5.076637 -33.048817 10.019190 -5.563826 43.482086 -0.343068 -0.006288 0.106813 -0.031474 -0.133714 0.308576 15.360828 -8.868272 12.346582 4.943704 -5.174675 10.111707 1.264514 -3.810249 9.094934 -0.790980 7.210672 11.101158 -12.318106 11.479405 -9.616968 -8.512142 0.020960 -1.910882 -28.919224 -0.699997 -3.910028 4.508354 -19.858299 -2.224001 0.078637 -0.184834 0.602361 -8.636541 -11.399323 -3.504835 24.468323 -2.963563 -5.644667 -4.946243 2.094256 0.113133 -0.253664 0.103060 -0.007111 +0.273239 1.614856 0.168223 1.940500 -20.586254 -11.312677 -6.426261 -4.807467 6.713341 -12.886385 1.595654 27.183458 -0.388482 0.137314 -0.097859 0.474284 0.167181 0.592241 4.363337 5.281616 -31.531485 9.498982 -4.702773 38.913509 -0.354493 -0.015034 0.097754 -0.017952 -0.153497 0.324411 14.890881 -8.579691 11.180299 4.772084 -5.225480 10.589808 1.320994 -3.811161 10.285958 -0.719606 6.772636 10.976127 -12.714890 11.198711 -10.499669 -7.627407 1.131515 -1.896130 -26.921474 0.094818 -3.812617 4.908077 -21.464312 -2.376128 0.080281 -0.166699 0.609572 -8.907653 -12.397421 -2.952041 21.458557 -4.484044 -5.297880 -5.691669 3.622358 0.060142 -0.265758 0.091516 0.005371 +0.277331 1.616617 0.176720 2.936355 -20.234690 -12.423692 -7.440042 -4.702025 7.723317 -13.639215 1.719158 27.088367 -0.347704 0.095099 -0.102163 0.512793 0.227143 0.597607 5.347136 5.092773 -29.293089 8.973684 -3.921381 33.949802 -0.381797 -0.017672 0.087484 -0.006805 -0.180232 0.351552 14.379848 -8.491043 10.683340 4.562894 -5.332934 11.013088 1.112489 -3.937561 11.036722 -1.037757 6.677705 10.967283 -12.649622 10.835899 -11.103036 -6.987932 1.553965 -1.552788 -24.450628 0.967897 -3.622825 5.621494 -22.384287 -2.451061 0.110502 -0.113252 0.592223 -8.923377 -12.963563 -2.366295 19.036575 -6.060053 -4.968187 -7.080666 5.788030 -0.049882 -0.244997 0.062701 0.057483 +0.281990 1.618314 0.185649 3.935950 -19.975906 -13.470344 -8.446548 -4.634501 8.534697 -14.544182 1.914137 27.118479 -0.368330 0.102974 -0.109190 0.522461 0.231264 0.610248 6.132268 4.886489 -27.054514 8.707843 -3.309890 29.131111 -0.385830 -0.015570 0.085881 0.002317 -0.186278 0.350654 13.767070 -8.363973 10.410259 4.456423 -5.503448 11.377352 1.066760 -4.043948 11.606845 -1.019220 6.530421 11.126109 -12.893304 10.702193 -11.680414 -6.545040 2.362676 -1.647606 -22.355587 1.570636 -3.376001 6.361985 -23.312319 -2.589114 0.111270 -0.124805 0.607171 -9.219361 -13.867187 -2.314639 17.515804 -6.807990 -4.825239 -9.570528 8.131412 -0.262355 -0.255550 0.068049 0.049185 +0.285416 1.617938 0.195422 4.836384 -19.584846 -13.983491 -9.181258 -4.602145 8.742255 -15.764236 2.256252 27.317549 -0.364263 0.098973 -0.114080 0.524402 0.241963 0.611414 7.115177 4.784397 -25.051985 8.157728 -2.640811 24.247156 -0.369422 -0.034754 0.080515 0.016462 -0.188609 0.343461 13.577951 -8.360355 9.505466 4.039819 -5.571687 11.464503 0.603761 -4.196056 12.063858 -0.785430 6.469944 11.022763 -12.940493 10.854214 -10.923961 -6.049020 3.724783 -2.050037 -19.880770 1.785222 -2.904534 6.634498 -23.258251 -2.454856 0.101281 -0.099871 0.574187 -9.214355 -15.139215 -2.807207 16.357065 -6.641982 -4.546820 -12.262469 11.375118 -0.758635 -0.254536 0.038821 0.053301 +0.288199 1.614552 0.205828 5.501999 -18.983150 -14.439883 -9.526916 -4.619923 9.075487 -17.114166 2.643763 27.612015 -0.383382 0.118425 -0.118071 0.527359 0.237103 0.620422 8.220951 4.635503 -22.843214 7.086633 -2.011553 19.550230 -0.373084 -0.041167 0.068217 0.023988 -0.185947 0.347996 13.764063 -8.303839 8.249594 3.652055 -5.576661 11.515009 0.061631 -4.181875 12.611379 -0.784308 6.331825 11.355735 -12.952488 10.665792 -10.932509 -5.263043 4.214811 -2.277065 -18.085043 1.730072 -2.537141 7.269808 -21.614712 -2.338888 0.094018 -0.105807 0.583146 -9.826147 -15.958713 -2.538904 14.973099 -7.633942 -4.311548 -13.660276 13.513130 -1.072121 -0.261758 0.037211 0.043573 +0.289813 1.610123 0.215935 6.283154 -18.216482 -14.890548 -9.775269 -4.668155 9.329054 -18.781454 3.175642 28.114075 -0.426747 0.158274 -0.117378 0.497460 0.195447 0.604459 8.982586 4.369207 -20.865597 5.802435 -1.512558 15.464101 -0.351822 -0.051487 0.070512 0.026505 -0.155678 0.326259 13.721465 -8.177870 7.020720 3.148574 -5.588692 11.484209 -0.528861 -4.155729 13.007775 -0.489836 6.371715 11.586772 -12.680111 10.763273 -10.295225 -4.610948 4.227846 -2.313578 -15.632827 1.728900 -1.975727 6.438355 -19.454004 -1.931612 0.067972 -0.143481 0.595944 -10.162242 -16.445547 -2.153110 13.438474 -8.816807 -4.008043 -14.461402 15.041906 -1.281716 -0.284887 0.052048 -0.004271 +0.290917 1.604496 0.226965 7.097708 -17.129730 -15.166535 -10.192272 -4.887434 9.344821 -20.191957 3.651021 29.180933 -0.438641 0.166236 -0.121271 0.502955 0.200876 0.605682 9.208413 3.916777 -19.096424 4.485482 -1.156900 11.882534 -0.351820 -0.058591 0.067507 0.036081 -0.151244 0.327244 13.243532 -7.911162 5.611916 2.762941 -5.614503 11.341988 -0.716813 -4.195790 13.419870 -0.310467 6.105711 11.929506 -12.333774 10.504126 -10.120347 -3.597796 4.366728 -2.416790 -14.227681 1.358350 -1.645980 5.930559 -17.445934 -1.661576 0.062807 -0.143912 0.596843 -10.614534 -16.990391 -1.703792 11.887816 -10.143188 -3.630639 -14.913715 16.414345 -1.447615 -0.293806 0.047669 -0.008381 +0.292072 1.598377 0.236661 7.712016 -16.004322 -15.367332 -9.978834 -5.258921 9.100378 -22.357061 4.474709 30.670122 -0.439226 0.163222 -0.127360 0.515837 0.220157 0.614076 9.433933 3.647732 -17.869516 2.987871 -0.884409 9.502289 -0.353731 -0.059620 0.066595 0.046321 -0.153594 0.330872 12.700594 -7.501065 4.181870 2.463449 -5.492935 11.347079 -0.698926 -4.101866 14.127007 0.180278 5.501620 12.209055 -11.815372 10.111182 -10.181724 -2.991740 3.895281 -2.436967 -12.062210 0.768945 -1.183762 5.186978 -15.957305 -1.402746 0.056840 -0.137682 0.587971 -10.285512 -17.062813 -0.946763 9.662179 -12.565763 -3.073917 -15.108890 17.430792 -1.512434 -0.299916 0.043413 0.001689 +0.294261 1.592098 0.246146 7.928586 -15.323689 -15.600723 -9.507494 -5.520351 9.085938 -24.409924 5.326041 31.885763 -0.418748 0.143598 -0.127389 0.544133 0.253459 0.623313 9.687757 3.499894 -16.785881 2.257941 -0.765191 8.231608 -0.366577 -0.068417 0.066878 0.053198 -0.165974 0.348757 12.889355 -7.166479 3.435863 2.314208 -5.161880 11.258159 -0.949478 -3.813627 14.326201 0.423360 4.832512 12.311110 -11.469893 9.620566 -10.045501 -2.816773 3.208280 -2.462684 -9.606656 -0.033824 -0.692229 4.037469 -14.369112 -1.091164 0.071214 -0.102609 0.576917 -10.229304 -16.947464 -0.260571 8.100140 -14.890740 -2.723325 -16.018366 16.948727 -1.421360 -0.295525 0.017982 0.031033 +0.297662 1.586325 0.254756 7.621066 -15.152352 -15.471346 -8.689743 -5.592311 8.784302 -26.091894 6.167400 32.777973 -0.413294 0.138755 -0.130253 0.537719 0.240441 0.636119 10.162057 3.676581 -16.570953 2.048931 -0.724808 8.049330 -0.360401 -0.073173 0.065454 0.042731 -0.185027 0.350596 13.919428 -6.928784 2.970354 2.330016 -4.719016 11.087609 -1.257635 -3.377333 14.288998 0.737286 3.976812 12.213526 -12.488499 9.621214 -9.735530 -3.279724 2.527533 -2.471359 -7.528010 -0.460287 -0.368102 3.751970 -13.351898 -0.926309 0.069560 -0.097729 0.569748 -10.915757 -16.559240 0.632193 7.309143 -16.583776 -2.514902 -15.946010 17.225903 -1.356128 -0.289680 0.009369 0.036431 +0.300499 1.581624 0.261898 6.962699 -14.989684 -15.508135 -7.497336 -5.706891 8.641949 -27.402998 6.910899 33.689133 -0.371358 0.115395 -0.110283 0.528690 0.237223 0.632792 10.841223 3.934454 -16.363766 1.802631 -0.675330 8.332833 -0.363488 -0.062381 0.074922 0.023858 -0.188796 0.350292 15.025036 -6.939703 3.109402 2.469576 -4.399085 10.865653 -1.578356 -3.061251 13.812459 1.058936 3.283553 12.595739 -12.710034 9.574748 -8.929901 -3.764917 1.589422 -2.094889 -6.462386 -0.273595 -0.331282 4.513516 -12.293045 -0.873566 0.084254 -0.096655 0.556048 -11.841180 -15.513090 1.390567 6.818652 -17.584158 -2.514080 -16.155731 15.101115 -0.978127 -0.263828 0.008948 0.051259 +0.302486 1.577613 0.267286 6.491487 -14.829825 -15.835049 -6.552793 -5.816516 8.458082 -28.358418 7.657000 34.973011 -0.372915 0.121387 -0.104146 0.503471 0.201766 0.629694 11.110970 4.290791 -16.501444 1.960814 -0.686886 9.932629 -0.355366 -0.061649 0.072800 0.005496 -0.190679 0.341966 15.290575 -6.979932 4.057720 2.806231 -4.295909 10.784944 -1.417856 -2.904050 13.238360 1.057600 3.013744 12.242680 -13.551327 9.753486 -8.635592 -4.509789 1.248641 -1.870017 -5.954648 0.346884 -0.322251 5.093081 -11.903625 -0.869440 0.083562 -0.109898 0.561624 -12.391376 -14.856591 1.550921 6.546456 -17.175508 -2.510331 -16.208431 13.476451 -0.717783 -0.255446 0.015310 0.036292 +0.303575 1.575660 0.270390 6.154626 -14.599262 -16.164690 -5.958722 -5.901393 8.157969 -28.582342 8.159281 36.367596 -0.385356 0.134096 -0.104726 0.494068 0.179139 0.632590 10.955996 4.573403 -16.777098 2.467204 -0.752147 11.476562 -0.352358 -0.062766 0.071203 -0.003092 -0.192168 0.342820 15.016627 -6.974363 5.258854 3.107051 -4.267134 10.837863 -1.130919 -2.852273 12.783979 1.048166 3.013133 11.610617 -13.959876 9.839225 -8.953155 -4.933079 1.305092 -1.641796 -5.789730 1.094720 -0.259236 4.756566 -11.887771 -0.829942 0.080110 -0.117927 0.575303 -12.431162 -14.316791 1.169260 7.166310 -15.805634 -2.762475 -16.535994 11.977156 -0.559312 -0.259227 0.020501 0.024483 +0.303996 1.575284 0.271468 5.956519 -14.886772 -16.370821 -5.440198 -5.703247 7.768578 -28.623344 8.622466 37.349514 -0.410951 0.141939 -0.105330 0.489458 0.171869 0.643956 10.699032 4.937881 -17.269531 3.223947 -0.833589 13.029739 -0.350202 -0.052367 0.074949 0.001684 -0.192338 0.326486 14.411567 -6.811465 6.490636 3.398232 -4.189300 11.032430 -0.706475 -2.769015 12.572057 0.983689 3.052675 10.958662 -14.582217 9.929221 -9.911330 -4.982390 2.009190 -1.749779 -6.529676 1.506366 -0.310794 4.260210 -11.822192 -0.800182 0.076715 -0.151632 0.592214 -12.734470 -14.029135 0.336070 8.472392 -13.112258 -3.091164 -16.294659 10.798756 -0.490094 -0.269127 0.040172 0.001546 +0.303396 1.574762 0.272427 5.944113 -14.881106 -15.928043 -5.248219 -5.503496 6.842326 -28.397404 8.842651 37.998096 -0.386869 0.138983 -0.101362 0.497581 0.189815 0.641138 10.461244 5.163394 -17.760872 3.605201 -0.835165 13.315157 -0.353035 -0.068152 0.079048 0.004424 -0.189802 0.348745 13.244697 -6.595880 6.948554 3.549035 -4.264536 10.971817 -0.019895 -2.948967 12.360863 1.202444 3.200784 10.330711 -14.881687 10.273718 -9.909054 -4.671034 3.270213 -1.564747 -8.216969 2.574778 -0.524523 3.975395 -13.123779 -0.834314 0.064245 -0.120932 0.565888 -12.930950 -13.512887 -0.862791 9.544818 -9.209775 -3.201771 -15.541133 8.565932 -0.340103 -0.268386 0.018952 0.025468 +0.301992 1.575547 0.272247 6.295666 -14.709862 -15.478904 -5.393034 -5.279015 5.930209 -28.091183 8.973037 38.481190 -0.383452 0.135332 -0.109572 0.490587 0.191550 0.638214 9.881211 5.181289 -18.090767 3.817168 -0.805951 12.824518 -0.354522 -0.069717 0.073610 0.000104 -0.193546 0.356008 11.499378 -6.062536 7.379834 3.723889 -4.253629 10.827986 0.934491 -2.997172 12.078241 1.451505 3.407788 10.225019 -15.201970 10.712162 -10.262547 -4.238020 4.296362 -1.496332 -10.667542 3.197327 -0.954672 3.816173 -14.553652 -0.948335 0.053289 -0.116241 0.559897 -13.048090 -13.251823 -1.829619 11.397662 -6.363200 -3.516469 -14.907276 7.384171 -0.305597 -0.267199 0.023045 0.034216 +0.301313 1.578676 0.271271 6.350891 -14.928918 -14.890300 -5.289638 -4.937490 4.974705 -27.805422 9.049233 38.566460 -0.395173 0.131492 -0.104987 0.500339 0.210715 0.627306 9.820393 5.269256 -18.177876 3.643326 -0.692824 11.978544 -0.353413 -0.058997 0.084513 0.018721 -0.179827 0.335639 10.804163 -5.714648 8.023380 3.906886 -4.057765 10.685299 1.375394 -2.820498 11.649542 0.551024 3.947881 10.107016 -14.591199 10.248961 -10.587710 -3.657234 5.385692 -1.954279 -14.252076 2.915236 -1.586665 3.151838 -13.583187 -0.965609 0.064907 -0.135342 0.565787 -12.736875 -13.191368 -2.810116 12.884055 -3.735859 -3.611952 -13.356699 6.262575 -0.253936 -0.275227 0.034386 0.020984 +0.301116 1.582978 0.270810 6.327734 -14.585902 -14.206551 -5.359306 -4.794890 4.228354 -27.446735 8.884121 38.345341 -0.403796 0.144675 -0.093543 0.486335 0.189070 0.613359 10.063691 5.184845 -18.003691 2.677558 -0.536818 10.488398 -0.347102 -0.037714 0.091176 0.011008 -0.155228 0.316317 10.574171 -5.597697 8.234426 3.888579 -3.978340 10.390518 1.420014 -2.722083 11.111599 -0.030063 4.150172 10.545103 -13.475779 9.625774 -10.296573 -3.357089 5.341727 -1.886962 -17.447842 2.909647 -2.170531 2.385792 -12.101093 -0.976106 0.066998 -0.171386 0.581421 -12.303658 -12.327489 -3.045515 14.666038 -2.607507 -3.861895 -11.567373 5.306784 -0.176175 -0.276049 0.064763 0.000144 +0.300101 1.586024 0.270895 6.282655 -14.564713 -13.151332 -5.057266 -4.493742 3.361610 -27.331770 8.838996 37.856174 -0.413529 0.153356 -0.086789 0.453945 0.159569 0.570760 10.547114 5.120882 -18.025686 1.767877 -0.429431 8.589332 -0.330096 -0.012344 0.101893 0.001757 -0.124825 0.281967 11.215186 -5.700174 7.833645 3.469628 -3.804246 9.886544 0.704192 -2.530436 10.496570 -1.342581 4.722218 11.383420 -12.442162 8.906964 -9.631481 -2.977246 5.110019 -1.654178 -21.442612 3.115887 -2.945143 2.993537 -9.796471 -1.034400 0.070500 -0.217050 0.591587 -11.741857 -11.240360 -3.277771 17.235374 -1.572505 -4.281914 -10.480584 4.944125 -0.185634 -0.275471 0.107696 -0.027396 +0.298989 1.589173 0.269950 6.213161 -14.444826 -12.582776 -4.839992 -4.117995 3.175196 -27.255589 8.754518 37.051910 -0.472215 0.194381 -0.104352 0.446712 0.125084 0.562555 11.089897 4.981045 -17.551100 0.873825 -0.375243 6.679551 -0.315954 0.003167 0.096090 0.006840 -0.108247 0.260152 11.683347 -5.722230 7.984309 3.210825 -3.657197 9.711916 0.065912 -2.289042 10.172665 -2.822268 5.572945 11.675797 -11.301063 8.050905 -10.012334 -3.549395 5.153346 -2.059089 -24.214298 2.908840 -3.370008 3.081029 -8.124423 -1.090686 0.067837 -0.254246 0.632770 -9.875575 -10.795519 -3.909389 18.611870 -0.562996 -4.423255 -9.127356 5.554174 -0.269495 -0.299385 0.142715 -0.067743 +0.297921 1.591083 0.268559 6.409310 -13.855268 -12.294105 -4.982192 -3.781625 3.255327 -27.215187 8.680679 36.401089 -0.515911 0.209961 -0.111730 0.475191 0.140582 0.584925 11.139560 4.701042 -17.125233 0.073008 -0.352894 5.117799 -0.324100 0.020746 0.090645 0.033808 -0.110041 0.243884 11.655437 -5.774844 7.993254 2.855658 -3.654006 9.720996 -0.471523 -2.266027 10.218013 -4.123295 6.122288 11.581326 -10.851723 7.319858 -11.291009 -5.106292 5.339411 -2.666782 -26.000406 2.945770 -3.682779 2.770024 -7.275377 -1.128248 0.085451 -0.283398 0.668822 -6.994681 -10.419511 -4.952926 19.434055 0.639557 -4.452319 -8.093126 6.758753 -0.434333 -0.315212 0.159177 -0.091834 +0.296676 1.592181 0.266441 6.329707 -13.470401 -12.048507 -4.515739 -3.270645 3.596764 -27.524151 8.762982 35.453831 -0.482355 0.159128 -0.118366 0.513468 0.180934 0.590725 11.479113 4.616019 -16.836380 -0.586822 -0.319920 4.161694 -0.344747 0.046808 0.079332 0.038520 -0.148962 0.242711 11.915384 -5.918492 9.243279 2.744793 -3.463031 9.117044 -1.051242 -2.122634 8.834666 -5.584988 6.756280 12.108064 -9.778239 6.594338 -11.531184 -6.142281 5.580660 -2.667313 -28.813879 3.299719 -4.303535 2.492845 -7.248882 -1.153578 0.151138 -0.242555 0.678934 -5.830135 -9.849174 -5.400896 21.912331 1.298590 -4.866356 -7.401746 7.767945 -0.556075 -0.282320 0.145909 -0.056910 +0.295693 1.591726 0.264469 6.269451 -13.174543 -11.172928 -4.097548 -2.774816 3.139869 -27.923309 8.971105 34.833061 -0.462497 0.123015 -0.113173 0.538420 0.218090 0.573582 11.572903 4.729729 -17.521500 -0.722051 -0.308501 3.688889 -0.351855 0.061679 0.088878 0.052708 -0.153924 0.226940 12.591079 -6.001792 9.605393 2.324220 -3.094104 8.426630 -1.950168 -1.864691 7.694792 -6.730220 7.192993 12.420354 -8.505079 5.825611 -11.389704 -7.119482 5.745963 -2.872986 -31.719219 3.185961 -4.805126 3.304205 -6.259524 -1.127030 0.195245 -0.224212 0.678660 -4.336369 -8.992954 -6.098037 24.572191 2.225322 -5.245615 -6.866198 7.011560 -0.562297 -0.271229 0.138055 -0.044087 +0.294774 1.590077 0.261428 6.223991 -12.498484 -10.298424 -3.738692 -2.387608 2.456785 -28.422720 9.300655 34.640659 -0.471048 0.133093 -0.104764 0.543157 0.204161 0.576009 11.427178 4.886093 -18.521704 -0.923525 -0.307686 3.365987 -0.350125 0.073081 0.088644 0.051002 -0.146948 0.214861 12.750919 -5.924517 9.764084 2.100662 -2.863102 7.873507 -2.296029 -1.662908 6.843264 -7.721919 7.261347 12.530271 -7.858998 5.049589 -11.184621 -8.389657 5.700026 -2.899172 -34.569199 3.367752 -5.315777 2.861494 -6.232089 -1.186186 0.213304 -0.233081 0.695718 -2.617242 -7.829601 -6.629254 26.567329 3.030761 -5.472888 -5.868387 6.065035 -0.509718 -0.268240 0.143429 -0.058422 +0.294259 1.587220 0.257322 6.169494 -11.490079 -9.553868 -3.625664 -2.133241 1.639908 -28.428530 9.564796 35.108116 -0.456315 0.112977 -0.110660 0.556463 0.213259 0.581558 10.931311 5.013136 -19.565132 -0.640476 -0.326723 3.132351 -0.359460 0.081784 0.081901 0.044623 -0.169771 0.221769 12.416652 -5.718983 10.065161 2.071599 -2.686715 7.382537 -2.161041 -1.538011 6.068128 -8.210696 7.058396 12.376423 -7.746030 4.617691 -11.547297 -10.153327 5.422749 -2.495363 -37.313187 4.306108 -6.149563 2.542232 -8.065474 -1.385875 0.238332 -0.209056 0.701367 -0.960675 -6.334895 -6.846285 28.344519 3.512999 -5.644332 -4.588552 5.497368 -0.463012 -0.254603 0.136931 -0.038455 +0.292719 1.583540 0.251854 6.346716 -10.079624 -9.171851 -3.698564 -1.993315 1.098098 -28.446646 9.876289 35.914600 -0.451207 0.100593 -0.122999 0.576708 0.231789 0.586925 10.336311 5.082289 -20.482149 -0.636109 -0.323668 3.094872 -0.370836 0.080858 0.070322 0.048905 -0.189061 0.235718 11.830220 -5.489142 10.382275 1.836290 -2.523545 7.158545 -2.233234 -1.432093 5.679388 -8.465545 7.060418 11.915367 -7.303729 4.333837 -12.238037 -12.344754 4.444545 -2.186519 -38.594967 4.894594 -6.635296 0.700253 -10.057399 -1.546314 0.254377 -0.174870 0.705543 1.993550 -4.773497 -7.243268 29.595652 3.768939 -5.750490 -3.320504 4.763573 -0.407473 -0.251150 0.122811 -0.018115 +0.291410 1.580408 0.245864 6.097801 -8.084673 -8.961074 -3.645773 -2.112123 0.746925 -27.999199 9.978824 37.101139 -0.461625 0.093452 -0.134490 0.584979 0.242272 0.595047 9.974692 5.021971 -20.964664 -0.988532 -0.342287 2.615807 -0.374972 0.097665 0.065072 0.055438 -0.202383 0.229859 11.922394 -5.433435 10.880869 1.674691 -2.309173 6.927113 -2.558054 -1.230235 5.207182 -8.500327 6.316292 11.783564 -6.782297 3.529876 -13.271473 -14.868720 2.971324 -2.428028 -39.410912 4.396306 -6.682635 -0.771670 -10.591772 -1.579446 0.264748 -0.185712 0.718039 4.568351 -3.170446 -7.274943 31.154720 3.604027 -5.880287 -2.058068 3.598397 -0.301977 -0.251484 0.138456 -0.016976 +0.290132 1.577297 0.240958 5.655987 -5.207283 -8.880144 -3.534804 -2.506983 0.745981 -27.057346 9.708907 38.250732 -0.457436 0.065780 -0.130228 0.627910 0.292682 0.609451 9.162701 4.725035 -21.163876 -0.882665 -0.368821 1.779833 -0.391600 0.103372 0.069681 0.084727 -0.219092 0.221234 12.332123 -5.633175 11.093179 1.611233 -2.237217 6.666456 -2.870291 -1.225025 4.803767 -8.673305 5.568934 11.918119 -6.087243 2.604244 -13.612399 -17.395287 1.384362 -2.891054 -40.121067 3.354253 -6.523072 -2.168480 -10.411863 -1.529809 0.302995 -0.169408 0.721786 7.278218 -1.809242 -7.262040 32.195698 3.394795 -5.820215 -0.176333 2.703054 -0.238702 -0.251986 0.117321 -0.007714 +0.288126 1.573907 0.236018 5.071200 -1.310085 -8.979477 -3.462275 -3.336172 0.716446 -25.579695 9.125874 39.875916 -0.492643 0.087285 -0.137740 0.617298 0.272974 0.604863 8.105640 4.269726 -21.185204 -0.702254 -0.442023 0.841704 -0.384840 0.106259 0.069463 0.087386 -0.209265 0.208792 12.515598 -6.103667 11.171701 1.573356 -2.628595 6.241263 -3.018596 -1.586869 4.192698 -8.397943 4.472079 12.649495 -5.669162 1.668499 -13.462651 -19.601292 0.114812 -3.444099 -40.997837 2.215185 -6.293734 -3.315649 -10.089608 -1.519195 0.295370 -0.202706 0.742351 9.265132 -0.571831 -7.364284 34.286995 3.681692 -5.850706 1.306664 1.601235 -0.169276 -0.269453 0.138047 -0.033514 +0.286089 1.570423 0.229779 4.519161 2.013033 -8.804413 -3.394229 -3.978602 0.373990 -23.799622 8.386347 41.092442 -0.514966 0.115132 -0.143671 0.596098 0.245459 0.579663 7.000577 4.003871 -21.745338 -0.159948 -0.485320 0.280459 -0.372178 0.103611 0.066446 0.083532 -0.184906 0.202915 12.647942 -6.286822 11.069590 1.561930 -2.801963 5.771015 -3.063146 -1.741449 3.537047 -8.382360 3.646526 13.512518 -4.685461 0.533655 -12.818738 -21.337523 -0.555319 -4.372241 -42.785118 0.400613 -6.014304 -3.957402 -9.570695 -1.536533 0.278947 -0.221616 0.748259 11.084444 0.315532 -7.665232 36.468132 4.319850 -5.811065 2.618415 0.804768 -0.126575 -0.282495 0.155875 -0.051592 +0.282698 1.567471 0.220860 4.339755 5.296126 -8.639063 -3.617352 -4.591505 -0.341889 -21.957815 7.643816 42.464226 -0.505066 0.107336 -0.159795 0.610407 0.263906 0.591155 5.706355 3.739227 -22.587250 -0.090952 -0.500829 0.227994 -0.385572 0.111254 0.050840 0.083885 -0.204308 0.223617 11.834533 -6.071802 11.287779 1.570490 -2.841987 5.399930 -2.697854 -1.820980 3.000845 -8.001896 2.335232 14.489170 -4.157847 -0.487822 -13.120970 -23.117996 -1.308810 -5.490103 -44.473148 -1.976666 -5.616940 -4.536611 -9.536870 -1.556270 0.281131 -0.208150 0.746406 12.868900 1.404231 -8.020859 39.191956 5.215048 -5.776736 3.076337 0.101030 -0.083253 -0.276038 0.158793 -0.022358 +0.279066 1.563656 0.209631 4.410641 8.778469 -8.338996 -4.177017 -5.352042 -1.658212 -20.224306 6.942038 44.196724 -0.535718 0.119804 -0.180802 0.624613 0.269391 0.609464 3.839717 3.319544 -23.641001 0.223997 -0.524266 0.164661 -0.397049 0.108205 0.042280 0.094038 -0.221937 0.235733 10.139997 -5.523827 11.436276 1.734672 -2.940818 5.203216 -1.683958 -1.921312 2.758838 -7.059371 0.565439 15.375489 -4.164672 -1.303845 -13.411613 -24.844503 -2.740470 -6.342815 -46.644436 -4.423630 -5.258162 -4.806755 -10.321457 -1.675398 0.277285 -0.214437 0.768935 14.550628 3.274301 -8.091605 41.522835 6.248281 -5.643144 3.137065 -0.153997 -0.054676 -0.296286 0.163144 -0.024494 +0.275951 1.560912 0.196651 4.221858 12.222312 -7.969398 -4.574879 -6.088915 -3.173878 -18.257891 6.093777 45.741943 -0.570213 0.118552 -0.205769 0.633910 0.272650 0.639866 1.913334 3.026387 -25.046480 0.575317 -0.519392 0.811232 -0.405243 0.130598 0.030969 0.102196 -0.251892 0.227176 9.002395 -5.115981 11.744984 1.919923 -2.989323 5.034914 -0.848791 -1.953063 2.456093 -6.277222 -1.312865 16.256500 -3.939985 -2.269178 -14.331126 -26.406481 -4.466504 -6.793521 -49.275414 -6.716758 -5.002645 -5.024380 -12.097875 -1.867526 0.285072 -0.248475 0.802474 15.311470 5.812951 -7.629855 43.943398 7.164374 -5.528250 3.167697 0.660597 -0.068037 -0.305083 0.190886 -0.035135 +0.271166 1.559062 0.186046 4.329813 15.240598 -7.697303 -4.911915 -6.451137 -4.112158 -16.486551 5.374850 46.628201 -0.605056 0.123380 -0.212928 0.647117 0.281501 0.666244 0.013548 2.800500 -26.351377 0.832223 -0.486264 2.147160 -0.419245 0.161164 0.023121 0.119243 -0.262878 0.206694 7.971820 -4.710463 11.501247 1.787841 -3.014975 5.102662 -0.466259 -1.969558 2.622693 -6.092480 -2.862349 17.486681 -3.411625 -3.446512 -15.150769 -27.364672 -6.139272 -7.003966 -51.347263 -8.929889 -4.592390 -5.766596 -14.325867 -2.017407 0.300741 -0.300162 0.839764 16.131170 8.795153 -7.216225 46.506470 8.447229 -5.371361 2.538527 1.778814 -0.133308 -0.312699 0.224473 -0.058877 +0.266357 1.558170 0.176763 4.469336 18.438759 -7.554540 -5.331704 -6.904976 -4.792204 -14.642678 4.535426 47.446972 -0.618371 0.113436 -0.214892 0.687401 0.323274 0.695304 -2.268661 2.399260 -27.167358 1.772370 -0.456835 3.508718 -0.437950 0.185195 0.020500 0.147397 -0.273279 0.195719 6.751513 -4.332043 11.024366 1.817539 -3.168061 5.341701 0.210218 -2.161468 3.137522 -6.325934 -3.960777 18.357395 -2.367594 -4.660659 -16.102848 -27.928358 -7.870063 -7.119432 -53.491894 -11.318644 -4.021638 -6.836498 -16.664190 -2.095754 0.327490 -0.317331 0.859239 17.375175 11.792508 -6.971258 47.440346 10.014883 -4.880489 2.702505 2.605687 -0.191300 -0.316295 0.233355 -0.059265 +0.262518 1.558551 0.168883 4.535508 21.535776 -7.519525 -5.677888 -7.207882 -5.377047 -12.677802 3.673854 48.068851 -0.656320 0.115019 -0.226504 0.716271 0.359364 0.704910 -4.807043 2.063550 -27.888044 3.103678 -0.505970 5.918813 -0.447647 0.195726 0.025226 0.181959 -0.272186 0.180820 6.133019 -4.163436 9.891955 1.622010 -3.363647 5.872842 0.427960 -2.368970 4.249702 -6.390102 -4.814962 19.150347 -1.610486 -5.565776 -17.028254 -27.707073 -9.734378 -6.959610 -55.536041 -13.697385 -3.317946 -8.666479 -19.988319 -2.044225 0.337919 -0.347150 0.882842 17.414997 14.978840 -6.749334 49.280174 11.872175 -4.524707 2.254881 4.816284 -0.423550 -0.340940 0.248493 -0.074888 +0.257643 1.561281 0.159073 4.696322 23.829775 -7.570925 -5.907414 -7.131886 -5.943677 -11.098533 3.144655 48.323887 -0.666339 0.097057 -0.239882 0.761246 0.430180 0.699197 -7.295033 1.968094 -28.689085 4.835948 -0.610713 8.912459 -0.461944 0.194954 0.024439 0.226890 -0.271691 0.178677 5.566652 -3.804609 9.249895 1.419187 -3.276936 6.583102 0.480642 -2.359561 5.542003 -6.753961 -5.431414 19.576117 -0.345162 -6.672997 -18.085983 -27.361067 -12.277717 -6.614029 -56.936787 -16.366074 -2.489535 -10.271459 -24.236067 -1.913069 0.353874 -0.331155 0.875917 17.754854 18.857485 -6.875865 49.469421 14.636652 -3.550971 2.458959 6.047445 -0.543968 -0.357518 0.237408 -0.057832 +0.251669 1.566445 0.148197 4.844276 25.722618 -7.818984 -6.154426 -6.876193 -6.353540 -9.450631 2.650651 48.336094 -0.672981 0.080640 -0.254259 0.803702 0.502213 0.693764 -9.802073 2.152521 -29.723602 7.316015 -0.910602 13.033252 -0.474850 0.199401 0.024266 0.269082 -0.266669 0.179246 5.129659 -3.366827 9.029748 1.284563 -3.084219 7.361532 0.465062 -2.239733 6.852462 -7.239060 -6.050381 20.090130 0.949662 -7.809561 -19.400423 -26.716757 -15.319329 -6.205644 -57.701885 -19.241638 -1.414664 -12.323476 -28.820805 -1.485177 0.363551 -0.324045 0.865740 17.591602 22.878622 -7.020157 48.983776 17.483776 -2.602768 3.094691 8.183731 -0.684511 -0.371071 0.236891 -0.036156 +0.245121 1.572719 0.139849 4.441242 27.460194 -8.137640 -5.571211 -6.410706 -6.516873 -8.092252 2.286307 47.531002 -0.675214 0.087608 -0.253799 0.827782 0.543276 0.683586 -11.715779 2.656454 -30.708874 9.936842 -1.456143 17.554523 -0.485444 0.183860 0.019519 0.297041 -0.247476 0.193378 5.164411 -3.186732 8.474540 1.143474 -2.992933 8.102832 0.268836 -2.193507 8.180728 -7.285074 -6.809966 20.031612 1.621186 -8.668216 -19.973759 -25.850964 -17.966930 -5.773623 -58.102531 -22.097084 -0.165981 -14.916681 -33.913589 -0.617247 0.356965 -0.308319 0.850025 16.538921 25.997391 -7.274403 48.629860 20.112856 -1.926184 3.994140 12.185192 -0.943659 -0.383326 0.222024 -0.022433 +0.238145 1.581995 0.132948 3.256044 29.063789 -9.155458 -4.263346 -5.738843 -5.939646 -6.523683 1.809567 45.968437 -0.671084 0.064617 -0.262712 0.855866 0.595954 0.669672 -12.887477 3.567952 -30.921839 13.017015 -2.249657 21.916311 -0.492669 0.184214 0.021121 0.325015 -0.246415 0.191221 5.819688 -3.089695 8.592896 1.310256 -2.822544 8.745311 0.045570 -2.052399 9.162944 -7.495933 -7.501566 20.265594 2.902846 -9.537364 -20.967094 -25.429478 -20.671041 -5.166546 -57.896339 -25.034472 1.128080 -16.931236 -39.738041 0.470246 0.371573 -0.289137 0.837893 15.678104 28.474581 -7.579505 47.163280 22.666531 -1.377524 5.270758 16.495649 -1.041277 -0.389334 0.213223 -0.003287 +0.230402 1.592869 0.127271 2.085419 30.759121 -10.160823 -3.242544 -5.104708 -5.097264 -4.353311 1.037138 44.016834 -0.671207 0.061167 -0.265493 0.869985 0.620600 0.648996 -13.886631 4.521673 -30.881811 16.438240 -3.338301 26.047087 -0.487922 0.175094 0.022171 0.344452 -0.230953 0.186936 6.452976 -3.046989 8.438512 1.410854 -2.733289 9.483829 -0.280487 -1.988145 10.343064 -7.657225 -7.926242 20.310543 4.373731 -10.259583 -21.355604 -24.526140 -23.240887 -4.442122 -57.102985 -28.010933 2.449670 -18.336750 -46.795601 1.761278 0.376816 -0.265207 0.823757 14.769696 30.711937 -7.982075 45.514183 25.363480 -0.828398 5.838742 20.116573 -1.104372 -0.396609 0.197824 0.001988 +0.222074 1.604715 0.121840 1.061291 32.598038 -10.967278 -2.461814 -4.708122 -4.387957 -2.097421 0.138652 41.779812 -0.668624 0.066232 -0.263059 0.890615 0.651212 0.635969 -14.800729 5.151631 -30.539011 19.701668 -4.647790 29.593250 -0.493659 0.152623 0.025192 0.365140 -0.213416 0.201603 6.798256 -3.182018 8.022310 1.412541 -2.873770 10.164309 -0.609947 -2.162307 11.538822 -7.301456 -8.453079 20.477814 5.060830 -10.631055 -21.281103 -23.219326 -26.046133 -4.101646 -55.558712 -30.929806 3.858132 -18.512182 -51.258770 2.607941 0.371746 -0.237674 0.807912 13.230483 32.914146 -8.366644 44.366531 27.835798 -0.350682 5.837532 23.977058 -1.295515 -0.410005 0.172704 0.013661 +0.214386 1.617263 0.116738 -0.040830 34.313217 -11.628920 -1.673478 -4.303185 -3.717794 -0.272738 -0.541548 39.043907 -0.685965 0.086447 -0.266125 0.904197 0.670933 0.625360 -15.100551 5.763575 -30.338890 22.089275 -6.028378 33.239742 -0.490705 0.133836 0.024913 0.388916 -0.189638 0.207924 7.654266 -3.481496 7.124373 1.258029 -3.029691 10.991680 -1.254539 -2.294507 13.125048 -7.143106 -8.871862 19.970989 5.773728 -11.021746 -21.883251 -20.821547 -28.345280 -4.319683 -54.832836 -34.347569 5.611211 -15.797197 -55.249847 1.883756 0.356126 -0.227107 0.797248 10.472245 34.357101 -9.389892 44.083149 30.640524 0.378157 5.566575 28.412239 -1.608877 -0.430060 0.160694 0.010856 +0.207233 1.630323 0.111912 -0.926990 35.945194 -12.042765 -1.089631 -4.046011 -3.182861 1.154779 -1.059013 36.375290 -0.726320 0.131717 -0.266789 0.882876 0.653905 0.585654 -15.328492 6.021835 -29.709166 24.265753 -7.479314 36.149906 -0.466941 0.111024 0.029957 0.404861 -0.137648 0.197424 8.484181 -3.707858 6.060759 1.080041 -3.164773 11.800040 -1.876318 -2.343385 14.762287 -7.194626 -9.298961 19.137547 6.506810 -11.665500 -22.415083 -17.928062 -30.181505 -4.954783 -54.551098 -38.053963 7.641475 -9.352050 -57.531986 -1.280784 0.319570 -0.247312 0.788946 7.571458 35.000576 -10.470747 43.392273 33.488678 1.136706 5.233444 33.810329 -1.940118 -0.461675 0.169901 -0.022040 +0.199417 1.642588 0.107683 -1.523354 37.582172 -12.106589 -0.611570 -3.879785 -2.685056 2.126771 -1.410940 33.377792 -0.733239 0.182211 -0.239170 0.870619 0.641316 0.548350 -15.162399 6.003363 -28.972998 25.431137 -8.677767 38.719017 -0.444807 0.074815 0.037785 0.421033 -0.068291 0.197358 8.695419 -3.708487 4.763141 0.921431 -3.203096 12.574789 -2.140428 -2.400179 16.520481 -6.731329 -9.662606 17.750376 7.522861 -12.259892 -22.043783 -14.683785 -31.439707 -6.016951 -53.927593 -41.983082 9.688093 -0.180859 -57.220863 -6.157604 0.282603 -0.235744 0.753213 5.366356 34.975170 -11.412416 41.867855 36.594833 2.093506 4.509552 38.822159 -2.274927 -0.481455 0.145630 -0.043949 +0.192301 1.653763 0.103754 -1.902600 38.971424 -11.598115 -0.258452 -3.666492 -2.409913 2.587248 -1.527363 30.199461 -0.736054 0.227359 -0.212117 0.860992 0.633863 0.510839 -15.075758 5.809106 -28.478971 26.066092 -9.787413 41.197960 -0.418194 0.027713 0.051263 0.435082 -0.002006 0.202367 8.911913 -3.606342 3.203442 0.729307 -3.134586 13.084082 -2.291216 -2.388950 18.104635 -6.328229 -10.260142 16.036341 7.892051 -13.038393 -21.588837 -10.477677 -31.491276 -7.363132 -54.548618 -45.883717 12.365843 8.642369 -56.008240 -10.829762 0.241057 -0.213507 0.704999 2.357427 34.070740 -12.345271 41.152473 39.719810 3.448417 2.151344 44.600342 -3.408776 -0.504541 0.110998 -0.054951 +0.186871 1.663475 0.099743 -2.310689 40.279587 -11.006674 0.100357 -3.499732 -2.295786 2.487200 -1.474953 27.307718 -0.744386 0.272430 -0.183019 0.840567 0.626667 0.461808 -14.897219 5.382519 -27.718615 26.136374 -10.742693 43.419033 -0.377804 -0.030645 0.068254 0.460318 0.069421 0.190501 9.313206 -3.503044 1.506375 0.548280 -2.994091 13.425483 -2.409700 -2.314191 19.640181 -5.704848 -10.987378 14.186208 7.560336 -13.808394 -20.347181 -6.513134 -31.244968 -8.634365 -54.938385 -49.560467 14.906215 16.944607 -53.622711 -14.881430 0.191178 -0.196107 0.638077 -0.985180 33.011467 -12.947491 39.825062 42.177673 4.524916 -2.254645 50.302353 -5.802182 -0.532254 0.067030 -0.077917 +0.180609 1.672342 0.095746 -2.503239 41.375919 -10.348382 0.313622 -3.236461 -2.151685 2.520932 -1.417373 24.281450 -0.759291 0.314480 -0.153257 0.836363 0.640097 0.422754 -14.572427 5.147749 -26.804932 25.770674 -11.338579 45.355209 -0.348792 -0.076431 0.083798 0.497903 0.142219 0.175041 9.530257 -3.335175 0.092881 0.380000 -2.821460 13.801282 -2.498828 -2.203831 21.189375 -5.234855 -11.602422 12.219041 7.642187 -14.588822 -19.976063 -2.457355 -30.242067 -10.026138 -55.791397 -53.192753 17.921051 23.789381 -52.122158 -18.169596 0.150129 -0.190574 0.582111 -3.918231 31.523756 -13.670365 38.664120 44.947613 5.792022 -8.619454 54.821968 -9.548865 -0.561699 0.033013 -0.102164 +0.175228 1.678619 0.092318 -2.534388 41.928226 -9.327371 0.399138 -2.895864 -2.123811 2.440695 -1.301455 21.389631 -0.742432 0.333099 -0.120285 0.845508 0.682946 0.365261 -14.100406 5.117535 -25.721895 24.800455 -11.346853 46.610592 -0.315162 -0.157269 0.101760 0.545211 0.209812 0.171700 9.921843 -2.921320 -1.544459 0.157356 -2.319041 13.918758 -2.748673 -1.888437 22.535528 -4.519524 -12.665752 10.148438 7.236514 -15.656990 -18.376480 1.733468 -28.637024 -11.167365 -57.143940 -57.041912 22.006670 29.470840 -50.953091 -20.705275 0.114865 -0.121885 0.481518 -6.999198 29.707127 -14.125741 38.072811 47.070999 7.218060 -16.802546 57.681587 -14.751307 -0.585693 -0.054971 -0.094647 +0.170380 1.682550 0.089506 -2.648692 42.096210 -8.263953 0.629836 -2.525081 -2.022045 1.749012 -1.041924 18.632061 -0.732197 0.378130 -0.074694 0.830158 0.691727 0.306290 -13.192470 5.209767 -24.292976 23.231970 -10.726810 46.869068 -0.269955 -0.238711 0.123302 0.580649 0.298648 0.163671 10.110391 -2.472841 -3.038821 -0.014700 -1.840771 13.869283 -2.902485 -1.543239 23.565681 -3.540960 -13.477184 7.882901 6.449614 -16.431211 -16.352365 5.223634 -26.780432 -11.762089 -58.829777 -60.872795 26.695683 35.853588 -49.717781 -23.559652 0.057281 -0.078550 0.380397 -9.650103 27.694958 -14.293766 36.838371 49.284142 8.743846 -25.710646 59.587105 -20.479643 -0.611490 -0.129753 -0.108443 +0.165620 1.684861 0.087163 -2.360321 42.547981 -6.863999 0.466906 -2.172605 -1.829564 1.126465 -0.839530 15.524995 -0.769601 0.453560 -0.048732 0.807118 0.675704 0.257755 -12.430118 5.072149 -22.558023 21.572147 -9.887450 46.221214 -0.222039 -0.324161 0.142270 0.614630 0.386305 0.158941 9.576869 -2.186552 -4.422950 -0.180364 -1.668776 13.638829 -2.730791 -1.370388 24.293818 -2.587760 -13.965160 5.836884 5.085770 -16.803114 -14.604775 7.846695 -24.405348 -12.159298 -61.781494 -64.193207 32.301254 40.748821 -47.924335 -25.388180 -0.020840 -0.064476 0.311044 -11.862582 25.530787 -14.400235 35.648048 51.772503 10.497199 -33.838905 59.846287 -25.374178 -0.664033 -0.183772 -0.146645 +0.160099 1.686340 0.085493 -1.814955 42.953789 -5.568084 0.031287 -1.872860 -1.411179 0.596582 -0.703577 12.976329 -0.777980 0.485012 -0.023631 0.792603 0.676827 0.222472 -11.626057 4.741498 -20.150265 19.584585 -8.669704 44.430088 -0.187022 -0.375358 0.157717 0.641319 0.443979 0.142626 8.949219 -1.913196 -5.546807 -0.470347 -1.443075 13.487349 -2.863154 -1.153778 24.905415 -1.644998 -14.329818 4.590631 4.553100 -17.053093 -13.341921 10.106936 -22.558868 -12.292032 -63.396645 -67.226295 37.006577 44.856899 -45.988918 -26.510292 -0.060908 -0.050900 0.252072 -13.562342 23.763559 -13.936574 34.601311 53.841854 11.711248 -43.928200 58.926441 -31.312250 -0.686214 -0.225371 -0.169588 +0.155369 1.687054 0.084405 -1.038251 42.629860 -4.394301 -0.633712 -1.500186 -0.438065 -0.022119 -0.585793 10.348891 -0.752269 0.488227 -0.005131 0.799392 0.688347 0.212396 -10.569515 4.390658 -16.915546 16.835037 -6.841002 41.077587 -0.179123 -0.406784 0.154293 0.650265 0.459344 0.152208 8.221095 -1.580770 -6.471900 -0.710672 -1.146535 13.495934 -3.064167 -0.794146 25.429632 -1.303423 -14.681625 3.763892 4.386237 -17.530979 -12.686896 11.745230 -21.478956 -12.116253 -62.285782 -69.919273 39.350536 48.310139 -44.224766 -27.180784 -0.064499 -0.003519 0.209089 -14.427497 22.758970 -13.160471 31.205866 55.644516 11.563784 -52.172802 57.433857 -35.489258 -0.676917 -0.272461 -0.154745 +0.150705 1.685748 0.084312 -0.290038 42.273487 -3.314117 -1.346378 -1.121383 0.574778 -0.007437 -0.550819 7.692607 -0.771068 0.530366 0.009406 0.789224 0.678371 0.178775 -9.502197 3.825621 -12.976598 14.075216 -4.958249 35.806370 -0.152059 -0.453248 0.161913 0.669011 0.512138 0.148402 7.181945 -1.177414 -7.538620 -0.857186 -0.869071 13.623814 -2.982444 -0.418474 26.178905 -0.767168 -14.661461 2.656714 4.355723 -17.809359 -11.948652 13.751911 -19.806362 -12.209868 -61.211620 -72.682259 41.933270 51.195114 -42.515987 -27.577179 -0.099852 0.016591 0.172632 -14.988359 21.376059 -12.565054 26.983641 57.292175 10.934783 -58.241360 55.737331 -37.933319 -0.702727 -0.306188 -0.176072 +0.145082 1.682891 0.084957 0.605823 41.100864 -2.069208 -1.978783 -0.650863 1.547334 0.012345 -0.480817 4.796735 -0.765250 0.549686 0.017632 0.776435 0.671852 0.139625 -8.139223 3.516699 -9.253458 10.278966 -2.867769 30.162609 -0.136097 -0.492970 0.163875 0.672279 0.544928 0.159414 5.811234 -0.347855 -8.556785 -0.860641 -0.195246 13.614306 -2.621492 0.313664 26.581839 -0.233719 -14.977542 2.000534 4.382761 -18.226637 -11.305650 15.210334 -18.234890 -12.115201 -60.617699 -75.596184 45.058079 53.098255 -40.487617 -27.222111 -0.122294 0.053563 0.137074 -15.074025 20.344606 -11.782967 22.344997 58.349854 9.735992 -62.368271 53.936634 -38.846844 -0.712225 -0.337819 -0.172621 +0.140055 1.678188 0.085436 1.570004 40.213821 -0.763812 -2.444937 -0.305819 1.997408 -0.202848 -0.384317 2.556235 -0.763432 0.599497 0.028844 0.734299 0.617382 0.102421 -7.262449 2.989761 -5.700957 6.758444 -1.382336 24.437973 -0.110707 -0.531431 0.161715 0.649859 0.588326 0.179662 4.196081 0.331002 -9.528341 -0.864063 0.316018 13.452916 -2.092408 0.920868 26.720657 0.351708 -15.286449 1.648702 4.003334 -18.496925 -10.152276 16.044497 -16.629969 -11.759386 -60.653557 -77.979538 48.357933 54.962593 -39.052269 -27.124033 -0.172080 0.071233 0.106281 -14.951234 19.369461 -10.925515 18.468014 59.050404 8.662132 -65.705521 52.258087 -39.281223 -0.721355 -0.351674 -0.179873 +0.134792 1.673906 0.085948 2.543075 38.417313 0.188307 -2.849252 0.078763 2.639567 -0.597739 -0.263363 0.481669 -0.782891 0.644232 0.040970 0.683540 0.554225 0.070443 -6.856147 2.406003 -2.312422 3.704601 -0.399372 18.905346 -0.081107 -0.537342 0.166768 0.630584 0.633238 0.163858 2.970963 1.115824 -10.271321 -1.008731 1.037758 13.559465 -2.018279 1.844362 27.053228 0.690664 -15.294487 1.604647 4.228273 -18.658215 -9.583572 16.504675 -15.130298 -11.630474 -58.156033 -79.718330 48.832214 56.228195 -38.777798 -27.207626 -0.209274 0.036202 0.102754 -14.689356 18.322502 -10.099127 14.392219 59.350132 7.294395 -70.056129 51.601223 -41.053566 -0.731632 -0.328415 -0.218878 +0.129590 1.670679 0.083496 2.702205 36.701839 0.486348 -2.678700 0.306702 2.864173 -1.107628 -0.172925 -0.808694 -0.828277 0.705107 0.035266 0.654131 0.523373 0.043678 -6.154392 1.836419 0.406537 1.431441 0.115053 13.854359 -0.060211 -0.564655 0.165787 0.639485 0.679597 0.167526 3.005822 1.667304 -10.683477 -1.114153 1.600607 13.901406 -2.317943 2.675538 27.748314 0.799350 -15.130547 0.893629 3.781889 -18.618504 -9.551449 16.266733 -13.564447 -11.777896 -54.775467 -81.217941 47.960983 58.047916 -38.559799 -27.637945 -0.266995 0.008268 0.095511 -14.631280 17.046846 -9.877468 10.202535 59.665512 5.718135 -74.244888 51.105705 -42.939346 -0.767504 -0.315106 -0.251355 +0.124521 1.670099 0.080770 2.461706 35.263344 0.139519 -2.206611 0.438580 3.187374 -1.335386 -0.128689 -1.583616 -0.816248 0.700272 0.045012 0.634431 0.509062 0.017517 -5.480972 1.246305 2.747751 0.018858 0.324239 9.648031 -0.051052 -0.548562 0.174625 0.628151 0.697241 0.151840 4.024122 2.058709 -10.749973 -1.356176 2.137061 14.453202 -3.210816 3.475378 28.347219 0.293650 -14.566850 0.815414 4.702866 -18.753145 -9.856362 16.209381 -13.630665 -11.716234 -43.786751 -81.348572 38.521572 59.631126 -39.055981 -28.324064 -0.262782 -0.005497 0.093871 -14.263066 16.940414 -9.636518 5.357641 59.554520 3.299359 -76.598694 50.618366 -43.652618 -0.758523 -0.294897 -0.258568 +0.119559 1.670415 0.078153 2.200115 34.074883 0.206242 -1.639331 0.305574 2.427539 -1.750045 -0.101623 -1.330747 -0.835996 0.736500 0.046488 0.597050 0.454322 -0.014514 -4.746152 0.807878 3.998532 -1.084824 0.383308 6.127007 -0.037535 -0.547111 0.178894 0.603604 0.729274 0.152477 5.311884 2.517585 -10.576951 -1.705931 2.709427 14.624536 -4.301122 4.300492 28.432043 -0.188175 -14.214143 0.843948 5.385569 -19.039980 -10.034118 16.288984 -13.570398 -11.571184 -37.661831 -81.309227 33.572430 61.485229 -39.728085 -29.360188 -0.282154 -0.033810 0.115317 -13.979778 16.668598 -9.179684 3.202501 59.799908 2.375279 -80.272774 50.243973 -45.521988 -0.768399 -0.263099 -0.284966 +0.114635 1.671754 0.076153 1.644520 33.440304 0.253261 -0.925995 0.126036 1.482330 -1.911165 -0.098357 -0.955948 -0.813821 0.729590 0.060691 0.579135 0.431806 -0.022549 -3.619632 0.554533 4.396863 -2.148628 0.452830 4.018525 -0.033604 -0.539301 0.188081 0.580839 0.732228 0.150398 6.368691 2.689648 -10.363791 -1.849836 3.009660 14.549895 -4.934672 4.726927 28.222124 -0.745950 -13.666760 1.106444 5.366399 -18.867844 -9.584204 16.453615 -13.829520 -10.843252 -34.535763 -80.701866 30.749111 64.715393 -40.373333 -31.275719 -0.278773 -0.037142 0.113378 -14.035901 16.653095 -8.824483 2.001298 60.208763 1.997700 -82.096458 49.898731 -46.284203 -0.755234 -0.256565 -0.283784 +0.109932 1.672376 0.075400 1.295010 33.481121 0.521082 -0.324293 -0.038454 0.457881 -2.060845 -0.079292 -0.507485 -0.823459 0.768823 0.068638 0.528464 0.364369 -0.034665 -2.861637 0.395406 4.423781 -2.633402 0.431289 2.594620 -0.007050 -0.549561 0.188721 0.551500 0.755267 0.147824 6.933473 2.812271 -10.289229 -1.887934 3.156713 14.240685 -5.206841 5.012040 27.864391 -1.051928 -13.655925 1.466474 4.331422 -18.791845 -8.415689 16.597418 -13.252803 -10.271108 -36.878922 -80.977745 33.450073 67.122765 -40.310059 -32.465187 -0.319352 -0.065203 0.105016 -14.540864 15.856384 -8.482399 1.997767 60.547745 2.622039 -84.576508 50.054199 -47.953842 -0.757898 -0.240801 -0.308830 +0.104924 1.673126 0.074508 1.196500 33.919628 0.617233 -0.041295 -0.115466 -0.034266 -1.928445 -0.085836 -0.449756 -0.815569 0.776384 0.075136 0.506014 0.325132 -0.026379 -2.398987 0.297562 4.517623 -2.742403 0.401983 1.924661 -0.000041 -0.552527 0.185534 0.525945 0.747547 0.150814 6.901422 2.838551 -10.187568 -1.849278 3.180538 14.128212 -5.088349 5.059543 27.636864 -1.227593 -13.682513 1.796692 3.468035 -18.599436 -7.448743 16.908384 -13.486770 -9.805251 -34.709290 -80.651840 31.541033 68.689369 -40.359444 -33.268707 -0.326670 -0.066251 0.104823 -14.917236 16.137800 -8.020524 1.573260 60.114002 2.577746 -86.773041 50.163651 -49.522564 -0.747943 -0.242738 -0.313466 +0.100428 1.673629 0.074096 1.103975 33.979431 0.673347 0.195685 -0.075464 -0.116285 -1.825712 -0.088740 -0.806052 -0.795450 0.758017 0.076582 0.511727 0.330893 -0.024579 -2.086533 0.226044 4.401073 -2.553589 0.370667 1.487296 -0.000196 -0.561265 0.183746 0.522715 0.731606 0.154432 6.877834 2.899671 -10.189466 -1.852989 3.277582 14.061892 -5.094145 5.133415 27.595903 -1.399282 -13.522391 2.257778 3.224619 -18.447943 -6.748367 17.225178 -13.233134 -9.625971 -33.884827 -80.705353 30.981220 69.179573 -40.153439 -33.357933 -0.313078 -0.034787 0.092228 -15.017733 15.959023 -7.926957 1.357403 60.508221 2.697932 -86.840057 49.996147 -49.352970 -0.736011 -0.267721 -0.298900 +0.096165 1.673139 0.073836 1.220538 34.230259 0.622406 0.230571 -0.035240 0.042251 -1.527127 -0.106024 -1.134634 -0.765902 0.743211 0.082363 0.514276 0.332998 -0.027963 -1.871850 0.210533 4.445139 -2.460114 0.367419 1.524452 -0.002708 -0.561681 0.185297 0.510960 0.726979 0.164340 6.260054 2.925602 -10.205591 -1.795749 3.273537 14.131217 -4.743575 5.062759 27.673952 -1.304189 -13.308847 2.781027 3.625407 -18.327415 -6.301701 17.540573 -13.057667 -9.729997 -32.780350 -80.868057 30.153566 68.420479 -40.181412 -32.936153 -0.304163 -0.007525 0.081055 -14.618386 15.834386 -7.807631 0.826287 60.684471 2.683280 -87.390205 50.462826 -49.997082 -0.721362 -0.280565 -0.279007 +0.093030 1.672524 0.072938 1.232568 34.683178 0.474910 0.197040 0.031295 0.286883 -1.105584 -0.130820 -1.724337 -0.765560 0.739267 0.068986 0.527362 0.341931 -0.025617 -1.684064 0.248492 4.421625 -2.434174 0.372566 1.769688 -0.012652 -0.569362 0.175961 0.510942 0.715045 0.182324 6.066134 3.041371 -10.214946 -1.693856 3.302436 14.209458 -4.501903 4.971045 27.795202 -0.937755 -13.256901 3.121925 4.101356 -18.195124 -6.394556 17.595268 -12.839832 -10.075691 -32.341721 -81.118774 30.098087 66.990913 -40.758858 -32.447964 -0.298262 0.020416 0.088509 -14.229906 15.612314 -7.828662 1.962926 60.533081 3.365970 -87.789757 51.222736 -51.005302 -0.722772 -0.292685 -0.264332 +0.089688 1.671678 0.071462 1.381949 35.429028 0.456838 0.101620 -0.048881 -0.040603 -0.736985 -0.156048 -1.544584 -0.793290 0.752019 0.058949 0.528688 0.355558 -0.030494 -1.696548 0.294932 4.278858 -2.187216 0.360208 2.102972 -0.005214 -0.580239 0.180581 0.531575 0.727852 0.176124 5.681755 2.900441 -10.148498 -1.625783 3.125547 14.292733 -4.171819 4.772327 27.971828 -0.580064 -13.277518 2.819175 3.827273 -17.951632 -6.656736 17.428659 -12.139396 -10.612112 -33.844524 -81.430832 31.669037 65.749184 -41.053211 -31.974920 -0.320453 0.003271 0.083534 -14.394090 15.145332 -8.302116 2.260664 60.721401 3.668245 -87.505417 51.913006 -51.477657 -0.746406 -0.287915 -0.276745 +0.086220 1.671613 0.070496 1.227778 35.940018 0.274685 0.277435 -0.104088 -0.343710 -0.576743 -0.170138 -1.399605 -0.782639 0.758410 0.069566 0.529441 0.360471 -0.029341 -1.543954 0.341663 4.001868 -1.694946 0.336475 2.631681 -0.005726 -0.586717 0.179225 0.534760 0.738722 0.181909 5.735066 2.737397 -10.073421 -1.626089 2.980023 14.322968 -4.132045 4.560612 28.067850 -0.313836 -13.435310 2.610354 3.639260 -17.946075 -6.464343 16.964933 -11.933111 -10.706272 -33.992123 -81.388275 31.762932 65.606773 -41.154209 -31.904236 -0.330163 0.008020 0.067724 -14.477422 15.319427 -8.529713 3.296667 61.269142 4.177522 -86.655357 52.028927 -51.133362 -0.743367 -0.296438 -0.271924 +0.083358 1.671630 0.070172 1.158154 36.069458 0.093816 0.513630 -0.193180 -0.561071 -0.648085 -0.186324 -0.857826 -0.779334 0.772135 0.064984 0.526734 0.352295 -0.048018 -1.332691 0.443916 3.686069 -1.597836 0.357166 3.322105 0.001045 -0.610278 0.169021 0.533197 0.747095 0.197772 5.877307 2.649546 -9.987617 -1.680527 2.935882 14.354516 -4.257368 4.573883 28.132406 -0.442568 -13.521820 2.401300 3.808778 -18.333462 -6.183328 16.780916 -11.715172 -10.835422 -36.299534 -81.285095 33.569817 65.331917 -41.141613 -31.840427 -0.337470 0.045761 0.052242 -14.366479 15.261948 -8.724748 3.244602 61.631279 4.224452 -86.064445 52.312061 -50.930725 -0.743962 -0.319765 -0.262094 +0.080865 1.671293 0.069830 1.113014 35.763039 -0.015015 0.814213 -0.252904 -0.811763 -0.882264 -0.178316 -0.323731 -0.801724 0.781831 0.061039 0.534687 0.365296 -0.038287 -1.249285 0.510152 3.380480 -1.596195 0.376963 3.619185 0.003416 -0.608723 0.170022 0.551901 0.752567 0.187476 6.077522 2.623214 -9.942127 -1.757048 2.956401 14.379050 -4.439812 4.661711 28.299021 -0.524828 -13.601445 2.232626 3.532584 -18.334280 -6.584974 16.462692 -11.155466 -11.009156 -39.048531 -81.328979 35.997299 65.407547 -41.064457 -31.893126 -0.346292 0.024123 0.053837 -14.809453 15.152475 -9.095040 4.015037 62.585377 4.619361 -84.772469 51.845974 -49.768559 -0.757174 -0.312478 -0.274791 +0.078690 1.670357 0.069908 1.035165 35.784931 -0.072413 1.169224 -0.303131 -1.179914 -1.241332 -0.151096 0.144948 -0.827531 0.814158 0.063549 0.515023 0.336201 -0.048745 -1.291338 0.467849 3.380780 -1.227285 0.321366 3.479705 0.015436 -0.609704 0.169722 0.550829 0.777534 0.177506 6.103163 2.602976 -9.974830 -1.767186 2.912050 14.291284 -4.404027 4.685915 28.254179 -0.580914 -13.557173 2.167021 3.609180 -18.448467 -6.602057 16.366638 -10.872387 -11.038634 -42.523594 -81.260468 39.032402 65.375038 -41.072159 -31.990337 -0.365088 -0.004118 0.062877 -14.803628 15.112213 -9.251678 4.461949 63.274105 4.883279 -83.603905 51.586010 -48.733044 -0.769223 -0.295170 -0.303822 +0.076597 1.670331 0.069960 1.019570 35.861710 -0.323491 1.378375 -0.296127 -1.050976 -1.409914 -0.137103 0.309856 -0.849876 0.825475 0.051710 0.497071 0.303940 -0.056004 -1.207573 0.404454 3.636643 -1.188517 0.290747 3.324433 0.014400 -0.585710 0.164942 0.536098 0.777194 0.168158 6.526380 2.624433 -9.908018 -1.922981 2.937468 14.376523 -4.823515 4.865574 28.263691 -0.827681 -13.281828 2.781018 4.499244 -18.501703 -7.196418 16.445639 -11.247074 -10.955324 -42.509098 -80.754425 38.650330 65.633942 -41.618572 -32.495312 -0.358345 -0.034984 0.102318 -14.914519 15.093378 -9.169952 4.819797 63.196419 5.021386 -83.927582 51.857780 -49.187798 -0.770721 -0.257144 -0.326413 +0.075258 1.670444 0.070336 0.892192 36.112305 -0.709661 1.466823 -0.315579 -0.802789 -1.149170 -0.168846 0.428178 -0.862697 0.831569 0.042041 0.514791 0.319339 -0.053213 -0.961615 0.308838 4.067444 -1.298715 0.294904 3.020282 0.008734 -0.587183 0.163641 0.548243 0.778089 0.175176 6.870462 2.528930 -9.953801 -2.003535 2.856042 14.568444 -5.071709 4.837686 28.592924 -0.905478 -13.178675 2.813828 5.026232 -18.606459 -7.765009 16.548752 -10.892982 -11.240913 -44.721809 -80.758339 40.602085 65.293053 -42.058964 -32.641357 -0.355695 -0.028242 0.111601 -14.898005 14.609347 -9.376429 5.651835 63.393562 5.647392 -84.616806 52.549801 -50.345825 -0.781149 -0.258240 -0.324040 +0.073552 1.670284 0.071099 1.045829 36.404373 -0.765478 1.356241 -0.303848 -0.610719 -0.870652 -0.185159 0.220932 -0.871081 0.860843 0.043275 0.501896 0.300764 -0.062406 -0.957733 0.327540 4.148426 -1.354308 0.304025 3.120034 0.019672 -0.606451 0.157234 0.547485 0.798355 0.184665 6.597807 2.458812 -10.071966 -1.989085 2.752110 14.623957 -4.922241 4.768068 28.763779 -0.914021 -13.144807 2.635721 4.778679 -18.637754 -7.378561 16.391348 -10.428543 -11.464166 -49.561325 -80.737061 44.902363 64.547562 -42.483311 -32.581692 -0.381163 -0.023364 0.098980 -14.561620 14.190603 -9.497291 6.366853 63.573101 6.401924 -85.399155 53.637516 -51.821232 -0.787840 -0.265775 -0.331001 +0.071551 1.670172 0.071729 1.389389 36.439602 -0.654162 1.092596 -0.235716 -0.311941 -0.698065 -0.190512 -0.220540 -0.883363 0.865037 0.036902 0.508159 0.307619 -0.059471 -1.263333 0.380055 4.059262 -1.196603 0.290519 3.359639 0.016204 -0.607453 0.155426 0.555536 0.797220 0.186080 6.260530 2.504630 -10.129204 -2.022061 2.785383 14.680104 -4.863013 4.834050 28.861631 -0.962676 -13.147769 2.711264 4.801445 -18.622095 -7.634530 16.361652 -10.223455 -11.741094 -52.711117 -80.662842 47.482277 63.326042 -42.414639 -32.001530 -0.382022 -0.028120 0.106533 -14.466109 13.873824 -9.583220 7.144923 63.394001 7.011439 -86.213013 54.561375 -53.267361 -0.795329 -0.263296 -0.334569 +0.070316 1.670144 0.071984 1.057742 36.872124 -0.849215 1.523878 -0.208912 -0.391857 -0.722919 -0.182614 -0.286065 -0.873812 0.863877 0.044145 0.496634 0.301524 -0.085036 -0.937315 0.340427 4.041193 -1.041760 0.278305 3.466509 0.027129 -0.615768 0.163659 0.552071 0.811878 0.181179 6.918967 2.404315 -10.114307 -2.097667 2.754581 14.613281 -5.223070 4.845906 28.733524 -1.109023 -13.184677 2.744221 4.970967 -18.905294 -7.277417 16.089365 -10.393722 -12.050610 -55.173679 -80.644966 49.547867 61.083500 -42.415867 -30.813631 -0.384747 -0.020208 0.091057 -14.075385 13.639119 -9.614275 7.362137 63.367119 7.293767 -85.902428 55.099770 -53.431530 -0.795216 -0.269020 -0.334109 +0.068695 1.669814 0.072107 1.172682 36.980831 -0.748471 1.497608 -0.218089 -0.551707 -0.788285 -0.180495 -0.270307 -0.859250 0.865159 0.053512 0.485923 0.297021 -0.120271 -0.976377 0.337658 3.924813 -0.868291 0.261145 3.467600 0.035086 -0.630295 0.168213 0.547971 0.834601 0.183655 7.011422 2.395876 -10.147407 -2.193405 2.795569 14.540473 -5.430142 4.909186 28.631712 -1.231446 -13.098920 2.779909 5.486808 -19.247047 -6.950037 16.275200 -10.264022 -12.216107 -57.851528 -80.525887 51.688046 59.947651 -42.182903 -30.191647 -0.386563 0.000455 0.073449 -13.784278 13.369806 -9.735926 7.633672 63.621166 7.532999 -84.590286 55.149101 -52.444565 -0.792893 -0.280839 -0.329248 +0.066801 1.670029 0.072177 1.187125 36.931793 -0.828285 1.584544 -0.211414 -0.574275 -0.874610 -0.168310 -0.137720 -0.853878 0.852943 0.057319 0.481894 0.305317 -0.117365 -0.924843 0.306214 3.943217 -0.710594 0.244724 3.424115 0.036048 -0.617330 0.172972 0.549581 0.834253 0.171210 6.938194 2.424942 -10.129640 -2.162041 2.830045 14.563975 -5.362299 4.945365 28.630226 -1.108801 -13.269798 2.883466 5.393882 -19.189121 -7.077047 16.167507 -10.224322 -12.440940 -58.815575 -80.563515 52.533798 58.769753 -42.223835 -29.591715 -0.386777 -0.020734 0.068889 -13.920820 13.326815 -9.742256 7.921180 63.209751 7.597058 -84.553902 55.298958 -52.618496 -0.788153 -0.267142 -0.330272 +0.065039 1.670066 0.072590 1.223659 36.710667 -0.789219 1.667362 -0.248274 -0.710682 -0.994127 -0.166245 0.114754 -0.844824 0.857779 0.061901 0.484431 0.299339 -0.114939 -0.919867 0.351613 3.776792 -0.658970 0.249494 3.601349 0.038687 -0.628574 0.170801 0.545470 0.832809 0.179662 6.920116 2.451582 -10.147552 -2.190137 2.873035 14.485276 -5.432727 4.983889 28.563953 -1.250659 -13.474602 3.059166 5.110630 -19.398945 -6.588612 16.064640 -9.891124 -12.523528 -60.746830 -80.527710 54.340054 58.082737 -42.285530 -29.261112 -0.387535 0.000330 0.058164 -13.849615 13.132182 -9.793068 8.730017 63.434021 8.228467 -84.133987 55.605637 -52.583416 -0.784933 -0.285533 -0.322633 +0.063767 1.670415 0.073052 1.097854 36.949028 -1.073196 1.935652 -0.254477 -0.687994 -1.066603 -0.164356 0.418212 -0.846568 0.833776 0.059838 0.499092 0.324248 -0.098737 -0.653753 0.299158 4.005669 -0.798804 0.268196 3.566319 0.028284 -0.605173 0.180354 0.553496 0.817310 0.166575 6.957397 2.375856 -10.142779 -2.110652 2.777897 14.540224 -5.311823 4.900160 28.637188 -1.358882 -13.677279 3.537927 5.161724 -19.382687 -7.172004 16.039686 -9.890258 -12.559263 -62.288631 -80.590691 55.694286 57.895103 -42.014481 -29.074713 -0.370295 -0.026997 0.073214 -14.062440 12.942348 -9.874907 9.264707 63.198250 8.559819 -84.200516 56.096909 -53.085690 -0.784523 -0.266521 -0.321773 +0.062867 1.670879 0.073103 0.856923 37.076107 -1.401306 2.204793 -0.269972 -0.682690 -1.208705 -0.157978 0.722451 -0.819156 0.813195 0.075473 0.499385 0.331879 -0.106948 -0.370564 0.220591 4.209398 -0.763063 0.271545 3.486713 0.027777 -0.596422 0.191148 0.547748 0.820315 0.159305 7.602540 2.296217 -10.084869 -2.208013 2.782577 14.598593 -5.738420 4.895529 28.646461 -1.458791 -13.595873 3.768286 5.554889 -19.492493 -6.980786 15.811882 -10.120440 -12.544173 -60.683052 -80.523209 54.150425 57.557728 -42.240051 -28.906698 -0.355791 -0.021915 0.062710 -13.799865 12.832455 -9.814207 9.383290 63.073311 8.679627 -84.512550 56.422298 -53.589619 -0.770975 -0.269176 -0.312642 +0.061152 1.670984 0.073207 0.915454 36.887005 -1.495124 2.163584 -0.294224 -0.655080 -1.098931 -0.164317 0.883671 -0.822154 0.822404 0.078934 0.479937 0.311945 -0.116933 -0.395738 0.198469 4.286450 -0.770784 0.266390 3.384946 0.033702 -0.591953 0.188015 0.540053 0.830461 0.152296 7.629976 2.325459 -10.029790 -2.260748 2.816364 14.666842 -5.828328 4.940321 28.679174 -1.617284 -13.597672 3.823709 5.571311 -19.589762 -6.911629 15.848895 -10.112772 -12.685377 -58.973038 -80.526443 52.560822 56.984753 -42.154224 -28.534901 -0.362758 -0.038457 0.064263 -13.486145 12.873084 -9.720198 8.992170 63.030647 8.511137 -85.463753 56.685261 -54.475582 -0.767245 -0.255791 -0.324681 +0.059513 1.670827 0.073122 0.898624 36.792915 -1.566548 2.177181 -0.309065 -0.656299 -0.995318 -0.175929 0.869200 -0.821420 0.834609 0.085102 0.483429 0.312668 -0.119532 -0.231750 0.240905 4.208457 -0.952491 0.301475 3.524331 0.038061 -0.607260 0.189477 0.544582 0.842580 0.159046 7.742310 2.302027 -10.014476 -2.261708 2.819495 14.726674 -5.895653 4.955140 28.775240 -1.700639 -13.496553 3.524153 5.385921 -19.618820 -6.649409 16.105032 -9.935603 -12.813622 -59.379627 -80.614807 52.898712 56.905380 -41.867214 -28.420603 -0.372220 -0.025643 0.051789 -13.497173 12.731162 -9.910016 8.515057 63.158932 8.275264 -84.925995 56.664631 -54.020771 -0.772165 -0.271268 -0.323466 +0.057871 1.671050 0.073288 1.126751 36.559666 -1.530483 1.942476 -0.329947 -0.553987 -0.672108 -0.202705 0.771892 -0.819245 0.842687 0.087930 0.482253 0.310788 -0.133697 -0.259554 0.278675 4.184200 -1.113613 0.332702 3.575195 0.047463 -0.619326 0.192033 0.546772 0.857767 0.160685 7.666715 2.351444 -10.005503 -2.330774 2.896169 14.843453 -6.022315 5.038610 28.951664 -1.752549 -13.266644 3.246964 5.749434 -19.731901 -6.518391 16.306450 -9.816788 -12.936370 -60.008442 -80.803070 53.505280 56.958443 -41.518337 -28.327360 -0.378644 -0.010050 0.038805 -13.001019 12.570029 -10.020170 7.993204 63.421856 8.054744 -84.885376 56.727764 -53.963055 -0.775347 -0.282678 -0.322482 +0.057133 1.671363 0.073799 1.089275 36.820839 -1.680030 1.896983 -0.338186 -0.444317 -0.473926 -0.211391 0.864332 -0.836497 0.856064 0.084708 0.464715 0.302566 -0.150371 -0.205178 0.272041 4.247215 -0.895749 0.311699 3.761143 0.059852 -0.619337 0.194467 0.552581 0.876872 0.147437 7.720521 2.269701 -10.036958 -2.314242 2.781862 14.922002 -5.981796 4.932163 29.135073 -1.760437 -13.156147 3.171250 5.786662 -19.680607 -6.652070 16.406183 -9.372772 -13.173079 -62.759819 -80.830498 56.232899 56.567490 -42.057896 -28.402193 -0.397282 -0.035242 0.034899 -12.765620 12.238463 -10.174098 8.385249 63.879204 8.415292 -84.971672 56.765835 -54.053337 -0.785596 -0.265522 -0.340198 +0.056120 1.671097 0.073820 1.057566 36.839554 -1.708119 1.992047 -0.353471 -0.576395 -0.589557 -0.214589 1.058342 -0.830550 0.836904 0.079233 0.494333 0.339559 -0.128948 -0.151834 0.284356 4.141333 -0.733491 0.300815 3.890992 0.041374 -0.610454 0.193442 0.565054 0.857366 0.155737 7.766678 2.265913 -10.021156 -2.293046 2.781116 14.873036 -5.962947 4.886598 29.127880 -1.726299 -13.386919 3.219218 5.820737 -19.718887 -7.258751 16.647438 -9.126202 -13.258051 -64.780159 -80.926186 58.244099 56.603374 -42.187405 -28.507826 -0.382001 -0.028421 0.040070 -13.030258 12.015736 -10.095535 9.413108 63.820103 8.994855 -86.126396 56.546379 -54.906349 -0.784324 -0.268824 -0.321024 +0.054985 1.670647 0.074399 1.095821 36.936230 -1.626120 2.081196 -0.376115 -0.797146 -0.753682 -0.202171 1.318451 -0.830802 0.855129 0.078751 0.473904 0.316363 -0.149132 -0.096882 0.295974 4.095630 -0.600843 0.270566 3.950432 0.052518 -0.629416 0.195166 0.553035 0.873600 0.168353 7.622669 2.275712 -10.091393 -2.312842 2.739209 14.712197 -5.903061 4.789038 29.013309 -1.531460 -13.429269 3.188437 5.562817 -19.705956 -6.695267 16.943766 -9.080315 -13.126895 -66.239227 -80.963356 59.685429 56.783913 -41.970383 -28.534273 -0.405423 -0.021944 0.029246 -12.976559 12.104907 -9.672997 10.847079 63.962929 9.861280 -87.721085 55.954205 -55.755169 -0.790723 -0.271924 -0.321337 +0.053966 1.670726 0.075040 1.060585 36.744377 -1.612108 2.328160 -0.316564 -0.709558 -0.951060 -0.175432 1.123986 -0.825951 0.868628 0.088873 0.462262 0.292059 -0.145241 0.095296 0.348313 4.001882 -0.871837 0.307826 4.099064 0.054479 -0.636562 0.192980 0.539283 0.877314 0.175364 7.630804 2.331413 -10.184217 -2.285271 2.759179 14.583076 -5.893759 4.797372 28.882467 -1.563660 -13.698160 3.390576 4.988390 -19.782946 -6.043611 16.978907 -9.295167 -12.923512 -67.691887 -80.955971 61.014683 56.770271 -41.682426 -28.429176 -0.413190 -0.021347 0.027558 -13.128291 12.364478 -9.378719 12.004086 63.792343 10.464619 -87.981667 55.823048 -55.968956 -0.786953 -0.277355 -0.324959 +0.053305 1.670554 0.075935 1.084530 36.542492 -1.560997 2.391451 -0.276362 -0.517755 -0.900840 -0.170862 0.852253 -0.850873 0.883273 0.073986 0.460937 0.277907 -0.129016 0.102797 0.402642 3.941768 -1.012981 0.332478 4.281877 0.054240 -0.633409 0.177198 0.541782 0.864085 0.173437 7.529418 2.366551 -10.308225 -2.244161 2.731062 14.495906 -5.788133 4.816861 28.893471 -1.780086 -13.734798 3.643216 4.703999 -19.747282 -6.172123 17.010826 -9.118904 -12.845424 -70.347260 -80.890465 63.501747 56.906372 -41.477272 -28.476862 -0.414377 -0.030452 0.045398 -13.140022 12.343482 -9.428499 12.651466 64.249504 10.785138 -86.288033 55.231815 -54.155842 -0.790055 -0.271061 -0.338819 +0.052890 1.670377 0.076310 1.070597 36.562958 -1.568699 2.367473 -0.243477 -0.378260 -0.757215 -0.173081 0.530254 -0.875511 0.909284 0.066754 0.455079 0.262711 -0.127630 0.183376 0.430434 3.949102 -1.107244 0.339805 4.372824 0.062129 -0.639185 0.176848 0.543574 0.875643 0.175485 7.617464 2.371757 -10.377048 -2.217575 2.688620 14.498006 -5.797486 4.825945 28.977270 -1.787121 -13.713302 3.565958 4.595257 -19.731100 -6.276907 17.116297 -8.909925 -12.919465 -73.537117 -80.882309 66.541573 56.928295 -41.421242 -28.557047 -0.433093 -0.045721 0.053374 -13.166192 12.073348 -9.508842 13.134483 64.340355 11.059110 -86.042732 55.085392 -53.870678 -0.805012 -0.261652 -0.353532 +0.052506 1.670582 0.076301 1.050691 36.366405 -1.686339 2.308505 -0.219475 -0.241682 -0.665622 -0.175459 0.381430 -0.864898 0.896839 0.068571 0.454871 0.268891 -0.132367 0.196316 0.410073 4.032111 -1.123985 0.348553 4.327813 0.062662 -0.631083 0.178655 0.543306 0.873466 0.169125 7.852811 2.438426 -10.328544 -2.239943 2.779359 14.602224 -5.973296 4.897834 29.070875 -1.781101 -13.696284 3.615752 4.969555 -19.811272 -6.400131 17.020857 -8.956825 -12.976069 -73.120125 -81.007019 66.391487 56.920227 -41.878071 -28.678911 -0.424972 -0.044541 0.049154 -12.895415 11.947515 -9.503976 12.969222 64.111511 10.956419 -86.773422 55.403698 -54.676723 -0.797579 -0.259023 -0.349095 +0.051841 1.670753 0.076057 0.857725 36.516743 -1.842267 2.555790 -0.277433 -0.526348 -0.772827 -0.176450 0.846080 -0.853735 0.886909 0.075604 0.456990 0.284103 -0.143938 0.607954 0.418726 4.006513 -1.348587 0.395014 4.454660 0.065181 -0.641743 0.185531 0.549451 0.880516 0.167548 8.026899 2.320533 -10.259238 -2.213379 2.703124 14.615870 -5.970800 4.802303 29.088760 -1.663761 -13.756658 3.296550 4.789773 -19.824558 -6.180539 16.798262 -8.714105 -13.031642 -73.482353 -80.841736 66.679405 57.019016 -42.485992 -28.974310 -0.427150 -0.032243 0.029398 -12.835209 11.825673 -9.514554 13.026668 64.010742 11.019248 -87.478996 55.434261 -55.282013 -0.799002 -0.272638 -0.341057 +0.051004 1.671050 0.076468 0.909297 36.567875 -1.958430 2.633620 -0.287639 -0.500175 -0.774964 -0.180695 1.045633 -0.844505 0.867536 0.079648 0.466620 0.307101 -0.146916 0.729203 0.416522 4.087817 -1.360196 0.418396 4.595594 0.059764 -0.636714 0.189720 0.559686 0.877513 0.159117 7.900171 2.290816 -10.256913 -2.228443 2.700352 14.701031 -5.944954 4.787866 29.196516 -1.451353 -13.782760 3.302187 5.056968 -19.771875 -6.331472 16.759624 -8.520159 -13.153247 -73.468071 -80.593155 66.478653 56.769646 -43.214493 -29.168270 -0.414012 -0.029168 0.024672 -13.015759 11.857333 -9.551817 13.687625 63.791054 11.190667 -87.213409 55.267269 -55.100910 -0.795388 -0.276697 -0.336466 +0.050081 1.671293 0.077276 0.949260 36.551426 -2.099984 2.755935 -0.211639 -0.234606 -0.858205 -0.168052 0.749324 -0.821951 0.851078 0.086562 0.470697 0.312558 -0.141774 0.853582 0.384105 4.256401 -1.569275 0.443839 4.469748 0.052056 -0.631911 0.190364 0.550966 0.866567 0.165551 7.737350 2.326644 -10.258555 -2.170702 2.735248 14.777138 -5.840622 4.827994 29.184546 -1.352467 -14.159698 3.434502 5.002151 -19.944111 -6.215186 16.190968 -8.656936 -13.161228 -71.993462 -80.493362 65.159561 56.390408 -44.036282 -29.210642 -0.402254 -0.018424 0.020585 -12.901986 12.032985 -9.377705 13.275103 62.911510 10.781097 -88.324135 55.850304 -56.473270 -0.782287 -0.282232 -0.320535 +0.049632 1.671538 0.077821 1.156298 36.496826 -2.127665 2.684453 -0.202155 -0.029091 -1.015884 -0.156476 0.745028 -0.816619 0.858987 0.085898 0.466582 0.286126 -0.131894 0.685491 0.372260 4.402023 -1.554614 0.433864 4.465656 0.053300 -0.627919 0.181654 0.532659 0.857004 0.173818 7.523893 2.357582 -10.241952 -2.174749 2.750012 14.820229 -5.793070 4.891691 29.099798 -1.390217 -14.534770 3.597457 5.218561 -20.355474 -6.080217 15.678180 -8.750938 -13.203680 -70.032333 -80.191971 63.259220 55.750103 -45.160484 -29.285482 -0.394580 -0.007406 0.030446 -12.664586 12.244982 -9.192148 12.718975 62.245361 10.403840 -89.635719 56.598236 -58.100262 -0.770649 -0.283998 -0.318057 +0.049804 1.671597 0.077977 1.068909 36.452381 -2.292628 2.786405 -0.194068 0.088780 -1.040707 -0.159036 0.791008 -0.794324 0.836809 0.085342 0.471809 0.296360 -0.137958 0.690796 0.308528 4.547214 -1.425836 0.417952 4.356831 0.049718 -0.629332 0.177862 0.528284 0.841884 0.177942 7.671723 2.291188 -10.284655 -2.126873 2.697577 14.807689 -5.759335 4.825286 29.017426 -1.689996 -14.738440 3.816248 5.212533 -20.664696 -5.943554 15.470534 -8.747698 -13.173607 -67.873299 -79.820023 60.973171 55.292614 -45.843788 -29.305782 -0.377227 0.020678 0.019434 -12.643470 12.525416 -9.440774 12.348681 62.323391 10.104821 -86.888382 56.897175 -56.129887 -0.756567 -0.299153 -0.297647 +0.049810 1.671876 0.078037 1.036540 36.473839 -2.403700 2.869146 -0.218954 0.107048 -1.164012 -0.153588 1.022332 -0.810535 0.848083 0.079926 0.480192 0.298212 -0.130302 0.591946 0.283084 4.629778 -1.127481 0.386642 4.424829 0.050783 -0.631893 0.172184 0.539211 0.841630 0.175131 7.591506 2.166855 -10.345649 -2.116177 2.561084 14.849139 -5.657648 4.719121 29.160421 -1.722937 -14.731774 3.772313 5.259337 -20.706451 -6.118005 15.504788 -8.423912 -13.311617 -69.624321 -79.666473 62.410542 55.051956 -45.851707 -29.262722 -0.376854 0.021951 0.024918 -12.895359 12.491542 -9.791109 12.708981 62.914509 10.320333 -84.744164 56.727249 -54.365055 -0.763020 -0.303410 -0.306532 +0.050471 1.671754 0.078483 0.927761 36.355148 -2.514930 2.989300 -0.208507 0.209768 -1.243284 -0.145459 1.088630 -0.813972 0.846211 0.074915 0.475472 0.287151 -0.127648 0.562768 0.228185 4.751265 -0.937316 0.346548 4.300982 0.048979 -0.621827 0.170499 0.531201 0.833410 0.173062 7.916453 2.212790 -10.395432 -2.127248 2.581004 14.778918 -5.808135 4.749259 29.043978 -1.876827 -14.680673 4.247573 5.418719 -20.692797 -6.174877 15.551222 -8.749429 -13.174081 -69.696617 -79.436378 62.229210 54.839966 -45.956326 -29.232710 -0.370016 0.013319 0.039735 -13.044841 12.520248 -9.799725 13.724273 62.795391 10.911464 -83.937027 57.317081 -54.302471 -0.759751 -0.291841 -0.310656 +0.050731 1.671491 0.079320 1.019595 36.256138 -2.364868 3.020548 -0.219561 0.056040 -1.336325 -0.133799 1.291663 -0.806025 0.844771 0.078581 0.464329 0.279056 -0.143216 0.384230 0.204050 4.766475 -0.801158 0.316622 4.146415 0.055712 -0.623473 0.177572 0.522809 0.843311 0.171823 7.919977 2.294420 -10.449600 -2.192153 2.649531 14.630041 -5.946094 4.770162 28.854000 -1.825394 -14.622427 4.413842 5.640388 -20.734272 -5.948671 15.440033 -8.603888 -13.137852 -71.107758 -79.295456 63.622021 54.508213 -46.429142 -29.209726 -0.375385 0.013650 0.032447 -12.644485 12.153852 -9.721261 15.248572 62.817627 12.082417 -84.642303 58.248035 -55.663387 -0.759379 -0.288531 -0.308910 +0.050435 1.671064 0.079546 1.093215 35.983459 -2.139066 3.017900 -0.250176 -0.255423 -1.383556 -0.129376 1.515809 -0.794921 0.823673 0.083695 0.471557 0.297074 -0.132545 0.314686 0.233642 4.578667 -0.858146 0.326619 4.114213 0.048409 -0.611996 0.183948 0.525512 0.833354 0.165164 7.850098 2.343861 -10.441935 -2.204339 2.701849 14.437363 -5.960052 4.738928 28.567453 -1.639070 -14.669295 4.467441 5.509173 -20.516508 -6.020821 14.951685 -8.429297 -12.996246 -70.795593 -78.828667 63.283733 54.822636 -47.833076 -29.893827 -0.366324 0.003588 0.031600 -12.526380 11.950170 -9.649835 17.124981 62.494274 13.262240 -85.263184 59.198933 -57.114037 -0.753988 -0.284215 -0.302799 +0.050955 1.670428 0.079848 0.903158 35.543045 -1.939275 3.079081 -0.293003 -0.540169 -1.283830 -0.139132 1.667989 -0.795821 0.818165 0.080269 0.471831 0.294149 -0.125795 0.489588 0.330247 4.126373 -1.003137 0.351619 4.303168 0.044581 -0.608511 0.181540 0.522403 0.820994 0.165066 8.181985 2.516271 -10.479298 -2.143429 2.831703 14.074541 -6.034562 4.811388 28.102791 -1.696857 -14.713048 4.768616 5.358076 -20.452990 -5.914348 14.838585 -7.849155 -12.572924 -72.965355 -77.797638 64.954498 56.478954 -50.188789 -31.986877 -0.359510 0.002851 0.039693 -12.703396 11.240368 -9.529000 20.194355 62.019615 15.377612 -87.118935 60.853245 -60.236732 -0.751565 -0.283514 -0.303227 +0.051321 1.669998 0.079917 1.022229 35.086838 -1.626138 2.948421 -0.322659 -0.831135 -1.264407 -0.140674 1.856723 -0.796688 0.810701 0.082596 0.475948 0.311898 -0.127076 0.412929 0.397859 3.872775 -1.250527 0.384538 4.270426 0.041650 -0.608461 0.189424 0.531868 0.824619 0.161722 8.220167 2.702409 -10.531656 -2.141010 3.001126 13.857776 -6.078801 4.907050 27.848139 -1.641022 -14.649521 4.750578 5.182422 -20.250347 -6.039337 14.636772 -6.951462 -12.545179 -75.166626 -76.673332 66.450600 56.915081 -52.600636 -33.442177 -0.363343 -0.009322 0.035841 -12.700704 10.473583 -9.627508 23.532307 61.605652 17.570370 -88.667953 62.650448 -63.399887 -0.758002 -0.279826 -0.302796 +0.051547 1.670034 0.079845 1.036968 34.697113 -1.492106 2.995063 -0.297665 -0.923387 -1.468930 -0.119321 1.882283 -0.787942 0.789721 0.080650 0.490478 0.331958 -0.105053 0.234910 0.420462 3.689543 -1.084834 0.359384 4.282561 0.027391 -0.588176 0.189629 0.532239 0.806153 0.161732 8.268809 2.753097 -10.519224 -2.155419 3.042879 13.714745 -6.065427 4.868672 27.539133 -1.832153 -14.313983 4.804371 5.274069 -19.927355 -6.604616 14.134051 -6.738642 -12.510820 -72.773087 -75.162277 63.252644 56.797169 -55.870495 -34.973621 -0.349820 -0.020095 0.046768 -12.291365 10.540211 -9.847257 25.971272 61.472614 19.155691 -88.934135 64.794701 -65.699059 -0.749635 -0.267912 -0.291611 +0.052380 1.670164 0.079837 0.978339 34.382439 -1.314850 2.958524 -0.296860 -1.043319 -1.372988 -0.126424 1.751303 -0.788802 0.779242 0.081538 0.486128 0.316137 -0.096265 0.256089 0.509649 3.326399 -1.243640 0.371080 4.495334 0.021474 -0.574345 0.195847 0.517525 0.789076 0.156921 8.456328 2.824600 -10.427766 -2.197144 3.090913 13.442000 -6.104652 4.799969 26.881725 -2.025975 -14.078970 4.973618 5.167322 -19.706944 -6.532036 13.719447 -7.396658 -12.326555 -68.442574 -73.521545 58.304405 55.976265 -59.391674 -36.169315 -0.333219 -0.034025 0.071983 -11.928431 11.437916 -9.687008 28.298519 60.954433 20.578396 -91.278008 67.431305 -70.375175 -0.746105 -0.256012 -0.298774 +0.052779 1.670293 0.079838 0.734260 34.114620 -1.308561 3.067275 -0.290465 -1.089488 -1.144143 -0.142079 1.516601 -0.783965 0.766228 0.082450 0.481462 0.302668 -0.076673 0.502374 0.499101 3.231309 -1.524966 0.390596 4.300476 0.012977 -0.549226 0.192679 0.502417 0.767043 0.150275 8.639610 2.859595 -10.354753 -2.162956 3.098950 13.273678 -6.004428 4.741036 26.379974 -2.116080 -14.129115 5.023512 5.099277 -19.614777 -6.763466 13.084592 -8.266971 -12.069324 -65.687752 -71.994507 54.787903 55.585758 -62.411465 -37.480400 -0.315546 -0.055010 0.094974 -11.848722 12.670813 -9.602012 29.958427 60.440739 21.379108 -92.888710 69.645279 -74.122681 -0.731303 -0.236541 -0.302483 +0.052813 1.670141 0.080230 0.908277 34.129711 -1.086763 2.783380 -0.339127 -1.196940 -0.761818 -0.176862 1.459013 -0.793272 0.768730 0.078292 0.487429 0.289737 -0.039022 0.292326 0.510687 3.113835 -1.202313 0.324853 4.215816 0.005018 -0.543315 0.190945 0.491474 0.741639 0.157884 8.235631 2.799057 -10.290317 -2.148050 2.984715 13.102726 -5.759658 4.549164 25.860296 -2.044061 -14.232334 4.869754 4.154621 -19.183256 -6.609097 12.373513 -9.045307 -12.040943 -63.317570 -70.749008 52.089851 54.330452 -65.406319 -38.066517 -0.314546 -0.066757 0.115838 -11.768380 13.679309 -9.734341 31.489487 59.440304 21.969141 -94.808510 72.765526 -79.156494 -0.732769 -0.232882 -0.304400 diff --git a/visualization/joints2bvh.py b/visualization/joints2bvh.py new file mode 100644 index 0000000000000000000000000000000000000000..f95895565867002cd6e16134f144b8617f82a545 --- /dev/null +++ b/visualization/joints2bvh.py @@ -0,0 +1,139 @@ +import visualization.Animation as Animation + +from visualization.InverseKinematics import BasicInverseKinematics, BasicJacobianIK, InverseKinematics +from visualization.Quaternions import Quaternions +import visualization.BVH_mod as BVH +from visualization.remove_fs import * + +from utils.plot_script import plot_3d_motion +from utils import paramUtil +from common.skeleton import Skeleton +import torch + +from torch import nn +from visualization.utils.quat import ik_rot, between, fk, ik +from tqdm import tqdm + + +def get_grot(glb, parent, offset): + root_quat = np.array([[1.0, 0.0, 0.0, 0.0]]).repeat(glb.shape[0], axis=0)[:, None] + local_pos = glb[:, 1:] - glb[:, parent[1:]] + norm_offset = offset[1:] / np.linalg.norm(offset[1:], axis=-1, keepdims=True) + norm_lpos = local_pos / np.linalg.norm(local_pos, axis=-1, keepdims=True) + grot = between(norm_offset, norm_lpos) + grot = np.concatenate((root_quat, grot), axis=1) + grot /= np.linalg.norm(grot, axis=-1, keepdims=True) + return grot + + +class Joint2BVHConvertor: + def __init__(self): + self.template = BVH.load('./visualization/data/template.bvh', need_quater=True) + self.re_order = [0, 1, 4, 7, 10, 2, 5, 8, 11, 3, 6, 9, 12, 15, 13, 16, 18, 20, 14, 17, 19, 21] + + self.re_order_inv = [0, 1, 5, 9, 2, 6, 10, 3, 7, 11, 4, 8, 12, 14, 18, 13, 15, 19, 16, 20, 17, 21] + self.end_points = [4, 8, 13, 17, 21] + + self.template_offset = self.template.offsets.copy() + self.parents = [-1, 0, 1, 2, 3, 0, 5, 6, 7, 0, 9, 10, 11, 12, 11, 14, 15, 16, 11, 18, 19, 20] + + def convert(self, positions, filename, iterations=10, foot_ik=True): + ''' + Convert the SMPL joint positions to Mocap BVH + :param positions: (N, 22, 3) + :param filename: Save path for resulting BVH + :param iterations: iterations for optimizing rotations, 10 is usually enough + :param foot_ik: whether to enfore foot inverse kinematics, removing foot slide issue. + :return: + ''' + positions = positions[:, self.re_order] + new_anim = self.template.copy() + new_anim.rotations = Quaternions.id(positions.shape[:-1]) + new_anim.positions = new_anim.positions[0:1].repeat(positions.shape[0], axis=-0) + new_anim.positions[:, 0] = positions[:, 0] + + if foot_ik: + positions = remove_fs(positions, None, fid_l=(3, 4), fid_r=(7, 8), interp_length=5, + force_on_floor=True) + ik_solver = BasicInverseKinematics(new_anim, positions, iterations=iterations, silent=True) + new_anim = ik_solver() + + # BVH.save(filename, new_anim, names=new_anim.names, frametime=1 / 20, order='zyx', quater=True) + glb = Animation.positions_global(new_anim)[:, self.re_order_inv] + if filename is not None: + BVH.save(filename, new_anim, names=new_anim.names, frametime=1 / 20, order='zyx', quater=True) + return new_anim, glb + + def convert_sgd(self, positions, filename, iterations=100, foot_ik=True): + ''' + Convert the SMPL joint positions to Mocap BVH + + :param positions: (N, 22, 3) + :param filename: Save path for resulting BVH + :param iterations: iterations for optimizing rotations, 10 is usually enough + :param foot_ik: whether to enfore foot inverse kinematics, removing foot slide issue. + :return: + ''' + + ## Positional Foot locking ## + glb = positions[:, self.re_order] + + if foot_ik: + glb = remove_fs(glb, None, fid_l=(3, 4), fid_r=(7, 8), interp_length=2, + force_on_floor=True) + + ## Fit BVH ## + new_anim = self.template.copy() + new_anim.rotations = Quaternions.id(glb.shape[:-1]) + new_anim.positions = new_anim.positions[0:1].repeat(glb.shape[0], axis=-0) + new_anim.positions[:, 0] = glb[:, 0] + anim = new_anim.copy() + + rot = torch.tensor(anim.rotations.qs, dtype=torch.float) + pos = torch.tensor(anim.positions[:, 0, :], dtype=torch.float) + offset = torch.tensor(anim.offsets, dtype=torch.float) + + glb = torch.tensor(glb, dtype=torch.float) + ik_solver = InverseKinematics(rot, pos, offset, anim.parents, glb) + print('Fixing foot contact using IK...') + for i in tqdm(range(iterations)): + mse = ik_solver.step() + # print(i, mse) + + rotations = ik_solver.rotations.detach().cpu() + norm = torch.norm(rotations, dim=-1, keepdim=True) + rotations /= norm + + anim.rotations = Quaternions(rotations.numpy()) + anim.rotations[:, self.end_points] = Quaternions.id((anim.rotations.shape[0], len(self.end_points))) + anim.positions[:, 0, :] = ik_solver.position.detach().cpu().numpy() + if filename is not None: + BVH.save(filename, anim, names=new_anim.names, frametime=1 / 20, order='zyx', quater=True) + # BVH.save(filename[:-3] + 'bvh', anim, names=new_anim.names, frametime=1 / 20, order='zyx', quater=True) + glb = Animation.positions_global(anim)[:, self.re_order_inv] + return anim, glb + + + +if __name__ == "__main__": + # file = 'batch0_sample13_repeat0_len196.npy' + # file = 'batch2_sample10_repeat0_len156.npy' + # file = 'batch2_sample13_repeat0_len196.npy' #line #57 new_anim.positions = lpos #new_anim.positions[0:1].repeat(positions.shape[0], axis=-0) #TODO, figure out why it's important + # file = 'batch1_sample12_repeat0_len196.npy' #hard case karate + # file = 'batch1_sample14_repeat0_len180.npy' + # file = 'batch0_sample3_repeat0_len192.npy' + # file = 'batch1_sample4_repeat0_len136.npy' + + # file = 'batch0_sample0_repeat0_len152.npy' + # path = f'/Users/yuxuanmu/project/MaskMIT/demo/cond4_topkr0.9_ts18_tau1.0_s1009/joints/{file}' + # joints = np.load(path) + # converter = Joint2BVHConvertor() + # new_anim = converter.convert(joints, './gen_L196.mp4', foot_ik=True) + + folder = '/Users/yuxuanmu/project/MaskMIT/demo/cond4_topkr0.9_ts18_tau1.0_s1009' + files = os.listdir(os.path.join(folder, 'joints')) + files = [f for f in files if 'repeat' in f] + converter = Joint2BVHConvertor() + for f in tqdm(files): + joints = np.load(os.path.join(folder, 'joints', f)) + converter.convert(joints, os.path.join(folder, 'ik_animations', f'ik_{f}'.replace('npy', 'mp4')), foot_ik=True) \ No newline at end of file diff --git a/visualization/remove_fs.py b/visualization/remove_fs.py new file mode 100644 index 0000000000000000000000000000000000000000..5dc0743a79093f19703c2e1cb86d573271501f48 --- /dev/null +++ b/visualization/remove_fs.py @@ -0,0 +1,329 @@ +import os +import sys +import numpy as np +import torch +import argparse + +from os.path import join as pjoin + + +# from visualization import BVH +from visualization.InverseKinematics import JacobianInverseKinematics, BasicInverseKinematics +# from scripts.motion_process_bvh import * +# from visualization.Animation import * + + +def softmax(x, **kw): + softness = kw.pop("softness", 1.0) + maxi, mini = np.max(x, **kw), np.min(x, **kw) + return maxi + np.log(softness + np.exp(mini - maxi)) + + +def softmin(x, **kw): + return -softmax(-x, **kw) + + +def alpha(t): + return 2.0 * t * t * t - 3.0 * t * t + 1 + + +def lerp(a, l, r): + return (1 - a) * l + a * r + +def remove_fs_old(anim, glb, foot_contact, fid_l=(3, 4), fid_r=(7, 8), interp_length=5, force_on_floor=True): + # glb_height = 2.06820832 Not the case, may be use upper leg length + scale = 1. #glb_height / 1.65 #scale to meter + # fps = 20 # + # velocity_thres = 10. # m/s + height_thres = [0.06, 0.03] #[ankle, toe] meter + if foot_contact is None: + def foot_detect(positions, velfactor, heightfactor): + feet_l_x = (positions[1:, fid_l, 0] - positions[:-1, fid_l, 0]) ** 2 + feet_l_y = (positions[1:, fid_l, 1] - positions[:-1, fid_l, 1]) ** 2 + feet_l_z = (positions[1:, fid_l, 2] - positions[:-1, fid_l, 2]) ** 2 + feet_l_h = positions[:-1, fid_l, 1] + feet_l = (((feet_l_x + feet_l_y + feet_l_z) < velfactor) & (feet_l_h < heightfactor)).astype(np.float) + + feet_r_x = (positions[1:, fid_r, 0] - positions[:-1, fid_r, 0]) ** 2 + feet_r_y = (positions[1:, fid_r, 1] - positions[:-1, fid_r, 1]) ** 2 + feet_r_z = (positions[1:, fid_r, 2] - positions[:-1, fid_r, 2]) ** 2 + feet_r_h = positions[:-1, fid_r, 1] + + feet_r = (((feet_r_x + feet_r_y + feet_r_z) < velfactor) & (feet_r_h < heightfactor)).astype(np.float) + + return feet_l, feet_r + + # feet_thre = 0.002 + # feet_vel_thre = np.array([velocity_thres**2, velocity_thres**2]) * scale**2 / fps**2 + feet_vel_thre = np.array([0.05, 0.2]) + # height_thre = np.array([0.06, 0.04]) * scale + feet_h_thre = np.array(height_thres) * scale + feet_l, feet_r = foot_detect(glb, velfactor=feet_vel_thre, heightfactor=feet_h_thre) + foot = np.concatenate([feet_l, feet_r], axis=-1).transpose(1, 0) # [4, T-1] + foot = np.concatenate([foot, foot[:, -1:]], axis=-1) + else: + foot = foot_contact.transpose(1, 0) + + T = len(glb) + + fid = list(fid_l) + list(fid_r) + fid_l, fid_r = np.array(fid_l), np.array(fid_r) + foot_heights = np.minimum(glb[:, fid_l, 1], + glb[:, fid_r, 1]).min(axis=1) # [T, 2] -> [T] + # print(foot_heights) + # floor_height = softmin(foot_heights, softness=0.03, axis=0) + sort_height = np.sort(foot_heights) + temp_len = len(sort_height) + floor_height = np.mean(sort_height[int(0.25*temp_len):int(0.5*temp_len)]) + if floor_height > 0.5: # for motion like swim + floor_height = 0 + # print(floor_height) + # floor_height = foot_heights.min() + # print(floor_height) + # print(foot) + # print(foot_heights.min()) + # print(floor_height) + glb[:, :, 1] -= floor_height + anim.positions[:, 0, 1] -= floor_height + for i, fidx in enumerate(fid): + fixed = foot[i] # [T] + + """ + for t in range(T): + glb[t, fidx][1] = max(glb[t, fidx][1], 0.25) + """ + + s = 0 + while s < T: + while s < T and fixed[s] == 0: + s += 1 + if s >= T: + break + t = s + avg = glb[t, fidx].copy() + while t + 1 < T and fixed[t + 1] == 1: + t += 1 + avg += glb[t, fidx].copy() + avg /= (t - s + 1) + + if force_on_floor: + avg[1] = 0.0 + + for j in range(s, t + 1): + glb[j, fidx] = avg.copy() + + s = t + 1 + + for s in range(T): + if fixed[s] == 1: + continue + l, r = None, None + consl, consr = False, False + for k in range(interp_length): + if s - k - 1 < 0: + break + if fixed[s - k - 1]: + l = s - k - 1 + consl = True + break + for k in range(interp_length): + if s + k + 1 >= T: + break + if fixed[s + k + 1]: + r = s + k + 1 + consr = True + break + + if not consl and not consr: + continue + if consl and consr: + litp = lerp(alpha(1.0 * (s - l + 1) / (interp_length + 1)), + glb[s, fidx], glb[l, fidx]) + ritp = lerp(alpha(1.0 * (r - s + 1) / (interp_length + 1)), + glb[s, fidx], glb[r, fidx]) + itp = lerp(alpha(1.0 * (s - l + 1) / (r - l + 1)), + ritp, litp) + glb[s, fidx] = itp.copy() + continue + if consl: + litp = lerp(alpha(1.0 * (s - l + 1) / (interp_length + 1)), + glb[s, fidx], glb[l, fidx]) + glb[s, fidx] = litp.copy() + continue + if consr: + ritp = lerp(alpha(1.0 * (r - s + 1) / (interp_length + 1)), + glb[s, fidx], glb[r, fidx]) + glb[s, fidx] = ritp.copy() + + targetmap = {} + for j in range(glb.shape[1]): + targetmap[j] = glb[:, j] + + # ik = BasicInverseKinematics(anim, glb, iterations=5, + # silent=True) + + # slightly larger loss, but better visual + ik = JacobianInverseKinematics(anim, targetmap, iterations=30, damping=5, recalculate=False, silent=True) + + anim = ik() + return anim + + + +def remove_fs(glb, foot_contact, fid_l=(3, 4), fid_r=(7, 8), interp_length=5, force_on_floor=True): + # glb_height = 2.06820832 Not the case, may be use upper leg length + scale = 1. #glb_height / 1.65 #scale to meter + # fps = 20 # + # velocity_thres = 10. # m/s + height_thres = [0.06, 0.03] #[ankle, toe] meter + if foot_contact is None: + def foot_detect(positions, velfactor, heightfactor): + feet_l_x = (positions[1:, fid_l, 0] - positions[:-1, fid_l, 0]) ** 2 + feet_l_y = (positions[1:, fid_l, 1] - positions[:-1, fid_l, 1]) ** 2 + feet_l_z = (positions[1:, fid_l, 2] - positions[:-1, fid_l, 2]) ** 2 + feet_l_h = positions[:-1, fid_l, 1] + feet_l = (((feet_l_x + feet_l_y + feet_l_z) < velfactor) & (feet_l_h < heightfactor)).astype(np.float) + + feet_r_x = (positions[1:, fid_r, 0] - positions[:-1, fid_r, 0]) ** 2 + feet_r_y = (positions[1:, fid_r, 1] - positions[:-1, fid_r, 1]) ** 2 + feet_r_z = (positions[1:, fid_r, 2] - positions[:-1, fid_r, 2]) ** 2 + feet_r_h = positions[:-1, fid_r, 1] + + feet_r = (((feet_r_x + feet_r_y + feet_r_z) < velfactor) & (feet_r_h < heightfactor)).astype(np.float) + + return feet_l, feet_r + + # feet_thre = 0.002 + # feet_vel_thre = np.array([velocity_thres**2, velocity_thres**2]) * scale**2 / fps**2 + feet_vel_thre = np.array([0.05, 0.2]) + # height_thre = np.array([0.06, 0.04]) * scale + feet_h_thre = np.array(height_thres) * scale + feet_l, feet_r = foot_detect(glb, velfactor=feet_vel_thre, heightfactor=feet_h_thre) + foot = np.concatenate([feet_l, feet_r], axis=-1).transpose(1, 0) # [4, T-1] + foot = np.concatenate([foot, foot[:, -1:]], axis=-1) + else: + foot = foot_contact.transpose(1, 0) + + T = len(glb) + + fid = list(fid_l) + list(fid_r) + fid_l, fid_r = np.array(fid_l), np.array(fid_r) + foot_heights = np.minimum(glb[:, fid_l, 1], + glb[:, fid_r, 1]).min(axis=1) # [T, 2] -> [T] + # print(foot_heights) + # floor_height = softmin(foot_heights, softness=0.03, axis=0) + sort_height = np.sort(foot_heights) + temp_len = len(sort_height) + floor_height = np.mean(sort_height[int(0.25*temp_len):int(0.5*temp_len)]) + if floor_height > 0.5: # for motion like swim + floor_height = 0 + # print(floor_height) + # floor_height = foot_heights.min() + # print(floor_height) + # print(foot) + # print(foot_heights.min()) + # print(floor_height) + glb[:, :, 1] -= floor_height + # anim.positions[:, 0, 1] -= floor_height + for i, fidx in enumerate(fid): + fixed = foot[i] # [T] + + """ + for t in range(T): + glb[t, fidx][1] = max(glb[t, fidx][1], 0.25) + """ + + s = 0 + while s < T: + while s < T and fixed[s] == 0: + s += 1 + if s >= T: + break + t = s + avg = glb[t, fidx].copy() + while t + 1 < T and fixed[t + 1] == 1: + t += 1 + avg += glb[t, fidx].copy() + avg /= (t - s + 1) + + if force_on_floor: + avg[1] = 0.0 + + for j in range(s, t + 1): + glb[j, fidx] = avg.copy() + + s = t + 1 + + for s in range(T): + if fixed[s] == 1: + continue + l, r = None, None + consl, consr = False, False + for k in range(interp_length): + if s - k - 1 < 0: + break + if fixed[s - k - 1]: + l = s - k - 1 + consl = True + break + for k in range(interp_length): + if s + k + 1 >= T: + break + if fixed[s + k + 1]: + r = s + k + 1 + consr = True + break + + if not consl and not consr: + continue + if consl and consr: + litp = lerp(alpha(1.0 * (s - l + 1) / (interp_length + 1)), + glb[s, fidx], glb[l, fidx]) + ritp = lerp(alpha(1.0 * (r - s + 1) / (interp_length + 1)), + glb[s, fidx], glb[r, fidx]) + itp = lerp(alpha(1.0 * (s - l + 1) / (r - l + 1)), + ritp, litp) + glb[s, fidx] = itp.copy() + continue + if consl: + litp = lerp(alpha(1.0 * (s - l + 1) / (interp_length + 1)), + glb[s, fidx], glb[l, fidx]) + glb[s, fidx] = litp.copy() + continue + if consr: + ritp = lerp(alpha(1.0 * (r - s + 1) / (interp_length + 1)), + glb[s, fidx], glb[r, fidx]) + glb[s, fidx] = ritp.copy() + + targetmap = {} + for j in range(glb.shape[1]): + targetmap[j] = glb[:, j] + + # ik = BasicInverseKinematics(anim, glb, iterations=5, + # silent=True) + + # slightly larger loss, but better visual + # ik = JacobianInverseKinematics(anim, targetmap, iterations=30, damping=5, recalculate=False, silent=True) + + # anim = ik() + return glb + + +def compute_foot_sliding(foot_data, traj_qpos, offseth): + foot = np.array(foot_data).copy() + offseth = np.mean(foot[:10, 1]) + foot[:, 1] -= offseth # Grounding it + foot_disp = np.linalg.norm(foot[1:, [0, 2]] - foot[:-1, [0, 2]], axis=1) + traj_qpos[:, 1] -= offseth + seq_len = len(traj_qpos) + H = 0.05 + y_threshold = 0.65 # yup system + y = traj_qpos[1:, 1] + + foot_avg = (foot[:-1, 1] + foot[1:, 1]) / 2 + subset = np.logical_and(foot_avg < H, y > y_threshold) + # import pdb; pdb.set_trace() + + sliding_stats = np.abs(foot_disp * (2 - 2 ** (foot_avg / H)))[subset] + sliding = np.sum(sliding_stats) / seq_len * 1000 + return sliding, sliding_stats \ No newline at end of file diff --git a/visualization/smpl2bvh.py b/visualization/smpl2bvh.py new file mode 100644 index 0000000000000000000000000000000000000000..1d582a558454457826518ddf2e89c46891a95a20 --- /dev/null +++ b/visualization/smpl2bvh.py @@ -0,0 +1,205 @@ +import torch +import numpy as np +import argparse +import pickle +import smplx + +from utils import bvh, quat + + +def parse_args(): + parser = argparse.ArgumentParser() + parser.add_argument("--model_path", type=str, default="./visualization/data/smpl/") + parser.add_argument("--model_type", type=str, default="smpl", choices=["smpl", "smplx"]) + parser.add_argument("--gender", type=str, default="MALE", choices=["MALE", "FEMALE", "NEUTRAL"]) + parser.add_argument("--num_betas", type=int, default=10, choices=[10, 300]) + parser.add_argument("--poses", type=str, default="data/gWA_sFM_cAll_d27_mWA5_ch20.pkl") + parser.add_argument("--fps", type=int, default=60) + parser.add_argument("--output", type=str, default="data/gWA_sFM_cAll_d27_mWA5_ch20.bvh") + parser.add_argument("--mirror", action="store_true") + return parser.parse_args() + +def mirror_rot_trans(lrot, trans, names, parents): + joints_mirror = np.array([( + names.index("Left"+n[5:]) if n.startswith("Right") else ( + names.index("Right"+n[4:]) if n.startswith("Left") else + names.index(n))) for n in names]) + + mirror_pos = np.array([-1, 1, 1]) + mirror_rot = np.array([1, 1, -1, -1]) + grot = quat.fk_rot(lrot, parents) + trans_mirror = mirror_pos * trans + grot_mirror = mirror_rot * grot[:,joints_mirror] + + return quat.ik_rot(grot_mirror, parents), trans_mirror + +def smpl2bvh(model_path:str, poses:str, output:str, mirror:bool, + model_type="smpl", gender="MALE", + num_betas=10, fps=60) -> None: + """Save bvh file created by smpl parameters. + + Args: + model_path (str): Path to smpl models. + poses (str): Path to npz or pkl file. + output (str): Where to save bvh. + mirror (bool): Whether save mirror motion or not. + model_type (str, optional): I prepared "smpl" only. Defaults to "smpl". + gender (str, optional): Gender Information. Defaults to "MALE". + num_betas (int, optional): How many pca parameters to use in SMPL. Defaults to 10. + fps (int, optional): Frame per second. Defaults to 30. + """ + + # names = [ + # "Pelvis", + # "Left_hip", + # "Right_hip", + # "Spine1", + # "Left_knee", + # "Right_knee", + # "Spine2", + # "Left_ankle", + # "Right_ankle", + # "Spine3", + # "Left_foot", + # "Right_foot", + # "Neck", + # "Left_collar", + # "Right_collar", + # "Head", + # "Left_shoulder", + # "Right_shoulder", + # "Left_elbow", + # "Right_elbow", + # "Left_wrist", + # "Right_wrist", + # "Left_palm", + # "Right_palm", + # ] + + names = [ + "Hips", + "LeftUpLeg", + "RightUpLeg", + "Spine", + "LeftLeg", + "RightLeg", + "Spine1", + "LeftFoot", + "RightFoot", + "Spine2", + "LeftToe", + "RightToe", + "Neck", + "LeftShoulder", + "RightShoulder", + "Head", + "LeftArm", + "RightArm", + "LeftForeArm", + "RightForeArm", + "LeftHand", + "RightHand", + "LeftThumb", + "RightThumb", + ] + + # I prepared smpl models only, + # but I will release for smplx models recently. + model = smplx.create(model_path=model_path, + model_type=model_type, + gender=gender, + batch_size=1) + + parents = model.parents.detach().cpu().numpy() + + # You can define betas like this.(default betas are 0 at all.) + rest = model( + # betas = torch.randn([1, num_betas], dtype=torch.float32) + ) + rest_pose = rest.joints.detach().cpu().numpy().squeeze()[:24,:] + + root_offset = rest_pose[0] + offsets = rest_pose - rest_pose[parents] + offsets[0] = root_offset + offsets *= 1 + + scaling = None + + # Pose setting. + if poses.endswith(".npz"): + poses = np.load(poses) + rots = np.squeeze(poses["poses"], axis=0) # (N, 24, 3) + trans = np.squeeze(poses["trans"], axis=0) # (N, 3) + + elif poses.endswith(".pkl"): + with open(poses, "rb") as f: + poses = pickle.load(f) + rots = poses["smpl_poses"] # (N, 72) + rots = rots.reshape(rots.shape[0], -1, 3) # (N, 24, 3) + scaling = poses["smpl_scaling"] # (1,) + trans = poses["smpl_trans"] # (N, 3) + + else: + raise Exception("This file type is not supported!") + + if scaling is not None: + trans /= scaling + + # to quaternion + rots = quat.from_axis_angle(rots) + + order = "zyx" + pos = offsets[None].repeat(len(rots), axis=0) + positions = pos.copy() + # positions[:,0] += trans * 10 + positions[:, 0] += trans + rotations = np.degrees(quat.to_euler(rots, order=order)) + + bvh_data ={ + "rotations": rotations[:, :22], + "positions": positions[:, :22], + "offsets": offsets[:22], + "parents": parents[:22], + "names": names[:22], + "order": order, + "frametime": 1 / fps, + } + + if not output.endswith(".bvh"): + output = output + ".bvh" + + bvh.save(output, bvh_data) + + if mirror: + rots_mirror, trans_mirror = mirror_rot_trans( + rots, trans, names, parents) + positions_mirror = pos.copy() + positions_mirror[:,0] += trans_mirror + rotations_mirror = np.degrees( + quat.to_euler(rots_mirror, order=order)) + + bvh_data ={ + "rotations": rotations_mirror, + "positions": positions_mirror, + "offsets": offsets, + "parents": parents, + "names": names, + "order": order, + "frametime": 1 / fps, + } + + output_mirror = output.split(".")[0] + "_mirror.bvh" + bvh.save(output_mirror, bvh_data) + + +def joints2bvh() + +if __name__ == "__main__": + args = parse_args() + + smpl2bvh(model_path=args.model_path, model_type=args.model_type, + mirror = args.mirror, gender=args.gender, + poses=args.poses, num_betas=args.num_betas, + fps=args.fps, output=args.output) + + print("finished!") \ No newline at end of file diff --git a/visualization/utils/bvh.py b/visualization/utils/bvh.py new file mode 100644 index 0000000000000000000000000000000000000000..a36402d9999cbc29eff95c9e9dc2e5fcdee27bda --- /dev/null +++ b/visualization/utils/bvh.py @@ -0,0 +1,242 @@ +import re +import numpy as np + +channelmap = { + 'Xrotation': 'x', + 'Yrotation': 'y', + 'Zrotation': 'z' +} + +channelmap_inv = { + 'x': 'Xrotation', + 'y': 'Yrotation', + 'z': 'Zrotation', +} + +ordermap = { + 'x': 0, + 'y': 1, + 'z': 2, +} + +def load(filename:str, order:str=None) -> dict: + """Loads a BVH file. + + Args: + filename (str): Path to the BVH file. + order (str): The order of the rotation channels. (i.e."xyz") + + Returns: + dict: A dictionary containing the following keys: + * names (list)(jnum): The names of the joints. + * parents (list)(jnum): The parent indices. + * offsets (np.ndarray)(jnum, 3): The offsets of the joints. + * rotations (np.ndarray)(fnum, jnum, 3) : The local coordinates of rotations of the joints. + * positions (np.ndarray)(fnum, jnum, 3) : The positions of the joints. + * order (str): The order of the channels. + * frametime (float): The time between two frames. + """ + + f = open(filename, "r") + + i = 0 + active = -1 + end_site = False + + # Create empty lists for saving parameters + names = [] + offsets = np.array([]).reshape((0, 3)) + parents = np.array([], dtype=int) + + # Parse the file, line by line + for line in f: + + if "HIERARCHY" in line: continue + if "MOTION" in line: continue + + rmatch = re.match(r"ROOT (\w+)", line) + if rmatch: + names.append(rmatch.group(1)) + offsets = np.append(offsets, np.array([[0, 0, 0]]), axis=0) + parents = np.append(parents, active) + active = (len(parents) - 1) + continue + + if "{" in line: continue + + if "}" in line: + if end_site: + end_site = False + else: + active = parents[active] + continue + + offmatch = re.match(r"\s*OFFSET\s+([\-\d\.e]+)\s+([\-\d\.e]+)\s+([\-\d\.e]+)", line) + if offmatch: + if not end_site: + offsets[active] = np.array([list(map(float, offmatch.groups()))]) + continue + + chanmatch = re.match(r"\s*CHANNELS\s+(\d+)", line) + if chanmatch: + channels = int(chanmatch.group(1)) + if order is None: + channelis = 0 if channels == 3 else 3 + channelie = 3 if channels == 3 else 6 + parts = line.split()[2 + channelis:2 + channelie] + if any([p not in channelmap for p in parts]): + continue + order = "".join([channelmap[p] for p in parts]) + continue + + jmatch = re.match("\s*JOINT\s+(\w+)", line) + if jmatch: + names.append(jmatch.group(1)) + offsets = np.append(offsets, np.array([[0, 0, 0]]), axis=0) + parents = np.append(parents, active) + active = (len(parents) - 1) + continue + + if "End Site" in line: + end_site = True + continue + + fmatch = re.match("\s*Frames:\s+(\d+)", line) + if fmatch: + fnum = int(fmatch.group(1)) + positions = offsets[None].repeat(fnum, axis=0) + rotations = np.zeros((fnum, len(offsets), 3)) + continue + + fmatch = re.match("\s*Frame Time:\s+([\d\.]+)", line) + if fmatch: + frametime = float(fmatch.group(1)) + continue + + dmatch = line.strip().split(' ') + if dmatch: + data_block = np.array(list(map(float, dmatch))) + N = len(parents) + fi = i + if channels == 3: + positions[fi, 0:1] = data_block[0:3] + rotations[fi, :] = data_block[3:].reshape(N, 3) + elif channels == 6: + data_block = data_block.reshape(N, 6) + positions[fi, :] = data_block[:, 0:3] + rotations[fi, :] = data_block[:, 3:6] + elif channels == 9: + positions[fi, 0] = data_block[0:3] + data_block = data_block[3:].reshape(N - 1, 9) + rotations[fi, 1:] = data_block[:, 3:6] + positions[fi, 1:] += data_block[:, 0:3] * data_block[:, 6:9] + else: + raise Exception("Too many channels! %i" % channels) + + i += 1 + + f.close() + + return { + 'rotations': rotations, + 'positions': positions, + 'offsets': offsets, + 'parents': parents, + 'names': names, + 'order': order, + 'frametime': frametime + } + + +def save_joint(f, data, t, i, save_order, order='zyx', save_positions=False): + + save_order.append(i) + + f.write("%sJOINT %s\n" % (t, data['names'][i])) + f.write("%s{\n" % t) + t += '\t' + + f.write("%sOFFSET %f %f %f\n" % (t, data['offsets'][i,0], data['offsets'][i,1], data['offsets'][i,2])) + + if save_positions: + f.write("%sCHANNELS 6 Xposition Yposition Zposition %s %s %s \n" % (t, + channelmap_inv[order[0]], channelmap_inv[order[1]], channelmap_inv[order[2]])) + else: + f.write("%sCHANNELS 3 %s %s %s\n" % (t, + channelmap_inv[order[0]], channelmap_inv[order[1]], channelmap_inv[order[2]])) + + end_site = True + + for j in range(len(data['parents'])): + if data['parents'][j] == i: + t = save_joint(f, data, t, j, save_order, order=order, save_positions=save_positions) + end_site = False + + if end_site: + f.write("%sEnd Site\n" % t) + f.write("%s{\n" % t) + t += '\t' + f.write("%sOFFSET %f %f %f\n" % (t, 0.0, 0.0, 0.0)) + t = t[:-1] + f.write("%s}\n" % t) + + t = t[:-1] + f.write("%s}\n" % t) + + return t + + +def save(filename, data, save_positions=False): + """ Save a joint hierarchy to a file. + + Args: + filename (str): The output will save on the bvh file. + data (dict): The data to save.(rotations, positions, offsets, parents, names, order, frametime) + save_positions (bool): Whether to save all of joint positions on MOTION. (False is recommended.) + """ + + order = data['order'] + frametime = data['frametime'] + + with open(filename, 'w') as f: + + t = "" + f.write("%sHIERARCHY\n" % t) + f.write("%sROOT %s\n" % (t, data['names'][0])) + f.write("%s{\n" % t) + t += '\t' + + f.write("%sOFFSET %f %f %f\n" % (t, data['offsets'][0,0], data['offsets'][0,1], data['offsets'][0,2]) ) + f.write("%sCHANNELS 6 Xposition Yposition Zposition %s %s %s \n" % + (t, channelmap_inv[order[0]], channelmap_inv[order[1]], channelmap_inv[order[2]])) + + save_order = [0] + + for i in range(len(data['parents'])): + if data['parents'][i] == 0: + t = save_joint(f, data, t, i, save_order, order=order, save_positions=save_positions) + + t = t[:-1] + f.write("%s}\n" % t) + + rots, poss = data['rotations'], data['positions'] + + f.write("MOTION\n") + f.write("Frames: %i\n" % len(rots)); + f.write("Frame Time: %f\n" % frametime); + + for i in range(rots.shape[0]): + for j in save_order: + + if save_positions or j == 0: + + f.write("%f %f %f %f %f %f " % ( + poss[i,j,0], poss[i,j,1], poss[i,j,2], + rots[i,j,0], rots[i,j,1], rots[i,j,2])) + + else: + + f.write("%f %f %f " % ( + rots[i,j,0], rots[i,j,1], rots[i,j,2])) + + f.write("\n") \ No newline at end of file diff --git a/visualization/utils/quat.py b/visualization/utils/quat.py new file mode 100644 index 0000000000000000000000000000000000000000..451d7b23d5172b6615cff06167824102a1942730 --- /dev/null +++ b/visualization/utils/quat.py @@ -0,0 +1,320 @@ +import numpy as np + +# Calculate cross object of two 3D vectors. +def _fast_cross(a, b): + return np.concatenate([ + a[...,1:2]*b[...,2:3] - a[...,2:3]*b[...,1:2], + a[...,2:3]*b[...,0:1] - a[...,0:1]*b[...,2:3], + a[...,0:1]*b[...,1:2] - a[...,1:2]*b[...,0:1]], axis=-1) + +# Make origin quaternions (No rotations) +def eye(shape, dtype=np.float32): + return np.ones(list(shape) + [4], dtype=dtype) * np.asarray([1, 0, 0, 0], dtype=dtype) + +# Return norm of quaternions +def length(x): + return np.sqrt(np.sum(x * x, axis=-1)) + +# Make unit quaternions +def normalize(x, eps=1e-8): + return x / (length(x)[...,None] + eps) + +def abs(x): + return np.where(x[...,0:1] > 0.0, x, -x) + +# Calculate inverse rotations +def inv(q): + return np.array([1, -1, -1, -1], dtype=np.float32) * q + +# Calculate the dot product of two quaternions +def dot(x, y): + return np.sum(x * y, axis=-1)[...,None] if x.ndim > 1 else np.sum(x * y, axis=-1) + +# Multiply two quaternions (return rotations). +def mul(x, y): + x0, x1, x2, x3 = x[..., 0:1], x[..., 1:2], x[..., 2:3], x[..., 3:4] + y0, y1, y2, y3 = y[..., 0:1], y[..., 1:2], y[..., 2:3], y[..., 3:4] + + return np.concatenate([ + y0 * x0 - y1 * x1 - y2 * x2 - y3 * x3, + y0 * x1 + y1 * x0 - y2 * x3 + y3 * x2, + y0 * x2 + y1 * x3 + y2 * x0 - y3 * x1, + y0 * x3 - y1 * x2 + y2 * x1 + y3 * x0], axis=-1) + +def inv_mul(x, y): + return mul(inv(x), y) + +def mul_inv(x, y): + return mul(x, inv(y)) + +# Multiply quaternions and vectors (return vectors). +def mul_vec(q, x): + t = 2.0 * _fast_cross(q[..., 1:], x) + return x + q[..., 0][..., None] * t + _fast_cross(q[..., 1:], t) + +def inv_mul_vec(q, x): + return mul_vec(inv(q), x) + +def unroll(x): + y = x.copy() + for i in range(1, len(x)): + d0 = np.sum( y[i] * y[i-1], axis=-1) + d1 = np.sum(-y[i] * y[i-1], axis=-1) + y[i][d0 < d1] = -y[i][d0 < d1] + return y + +# Calculate quaternions between two 3D vectors (x to y). +def between(x, y): + return np.concatenate([ + np.sqrt(np.sum(x*x, axis=-1) * np.sum(y*y, axis=-1))[...,None] + + np.sum(x * y, axis=-1)[...,None], + _fast_cross(x, y)], axis=-1) + +def log(x, eps=1e-5): + length = np.sqrt(np.sum(np.square(x[...,1:]), axis=-1))[...,None] + halfangle = np.where(length < eps, np.ones_like(length), np.arctan2(length, x[...,0:1]) / length) + return halfangle * x[...,1:] + +def exp(x, eps=1e-5): + halfangle = np.sqrt(np.sum(np.square(x), axis=-1))[...,None] + c = np.where(halfangle < eps, np.ones_like(halfangle), np.cos(halfangle)) + s = np.where(halfangle < eps, np.ones_like(halfangle), np.sinc(halfangle / np.pi)) + return np.concatenate([c, s * x], axis=-1) + +# Calculate global space rotations and positions from local space. +def fk(lrot, lpos, parents): + + gp, gr = [lpos[...,:1,:]], [lrot[...,:1,:]] + for i in range(1, len(parents)): + gp.append(mul_vec(gr[parents[i]], lpos[...,i:i+1,:]) + gp[parents[i]]) + gr.append(mul (gr[parents[i]], lrot[...,i:i+1,:])) + + return np.concatenate(gr, axis=-2), np.concatenate(gp, axis=-2) + +def fk_rot(lrot, parents): + + gr = [lrot[...,:1,:]] + for i in range(1, len(parents)): + gr.append(mul(gr[parents[i]], lrot[...,i:i+1,:])) + + return np.concatenate(gr, axis=-2) + +# Calculate local space rotations and positions from global space. +def ik(grot, gpos, parents): + + return ( + np.concatenate([ + grot[...,:1,:], + mul(inv(grot[...,parents[1:],:]), grot[...,1:,:]), + ], axis=-2), + np.concatenate([ + gpos[...,:1,:], + mul_vec( + inv(grot[...,parents[1:],:]), + gpos[...,1:,:] - gpos[...,parents[1:],:]), + ], axis=-2)) + +def ik_rot(grot, parents): + + return np.concatenate([grot[...,:1,:], + mul(inv(grot[...,parents[1:],:]), grot[...,1:,:]), + ], axis=-2) + +def fk_vel(lrot, lpos, lvel, lang, parents): + + gp, gr, gv, ga = [lpos[...,:1,:]], [lrot[...,:1,:]], [lvel[...,:1,:]], [lang[...,:1,:]] + for i in range(1, len(parents)): + gp.append(mul_vec(gr[parents[i]], lpos[...,i:i+1,:]) + gp[parents[i]]) + gr.append(mul (gr[parents[i]], lrot[...,i:i+1,:])) + gv.append(mul_vec(gr[parents[i]], lvel[...,i:i+1,:]) + + _fast_cross(ga[parents[i]], mul_vec(gr[parents[i]], lpos[...,i:i+1,:])) + + gv[parents[i]]) + ga.append(mul_vec(gr[parents[i]], lang[...,i:i+1,:]) + ga[parents[i]]) + + return ( + np.concatenate(gr, axis=-2), + np.concatenate(gp, axis=-2), + np.concatenate(gv, axis=-2), + np.concatenate(ga, axis=-2)) + +# Linear Interpolation of two vectors +def lerp(x, y, t): + return (1 - t) * x + t * y + +# LERP of quaternions +def quat_lerp(x, y, t): + return normalize(lerp(x, y, t)) + +# Spherical linear interpolation of quaternions +def slerp(x, y, t): + if t == 0: + return x + elif t == 1: + return y + + if dot(x, y) < 0: + y = - y + ca = dot(x, y) + theta = np.arccos(np.clip(ca, 0, 1)) + + r = normalize(y - x * ca) + + return x * np.cos(theta * t) + r * np.sin(theta * t) + + +################################################### +# Calculate other rotations from other quaternions. +################################################### + +# Calculate euler angles from quaternions. +def to_euler(x, order='zyx'): + + q0 = x[...,0:1] + q1 = x[...,1:2] + q2 = x[...,2:3] + q3 = x[...,3:4] + + if order == 'zyx': + + return np.concatenate([ + np.arctan2(2 * (q0 * q3 + q1 * q2), 1 - 2 * (q2 * q2 + q3 * q3)), + np.arcsin((2 * (q0 * q2 - q3 * q1)).clip(-1,1)), + np.arctan2(2 * (q0 * q1 + q2 * q3), 1 - 2 * (q1 * q1 + q2 * q2))], axis=-1) + + elif order == 'yzx': + + return np.concatenate([ + np.arctan2(2 * (q2 * q0 - q1 * q3), q1 * q1 - q2 * q2 - q3 * q3 + q0 * q0), + np.arcsin((2 * (q1 * q2 + q3 * q0)).clip(-1,1)), + np.arctan2(2 * (q1 * q0 - q2 * q3), -q1 * q1 + q2 * q2 - q3 * q3 + q0 * q0)],axis=-1) + + elif order == 'zxy': + + return np.concatenate([ + np.arctan2(2 * (q0 * q3 - q1 * q2), q0 * q0 - q1 * q1 + q2 * q2 - q3 * q3), + np.arcsin((2 * (q0 * q1 + q2 * q3)).clip(-1,1)), + np.arctan2(2 * (q0 * q2 - q1 * q3), q0 * q0 - q1 * q1 - q2 * q2 + q3 * q3)], axis=-1) + + elif order == 'yxz': + + return np.concatenate([ + np.arctan2(2 * (q1 * q3 + q0 * q2), q0 * q0 - q1 * q1 - q2 * q2 + q3 * q3), + np.arcsin((2 * (q0 * q1 - q2 * q3)).clip(-1,1)), + np.arctan2(2 * (q1 * q2 + q0 * q3), q0 * q0 - q1 * q1 + q2 * q2 - q3 * q3)], axis=-1) + + else: + raise NotImplementedError('Cannot convert from ordering %s' % order) + +# Calculate rotation matrix from quaternions. +def to_xform(x): + + qw, qx, qy, qz = x[...,0:1], x[...,1:2], x[...,2:3], x[...,3:4] + + x2, y2, z2 = qx + qx, qy + qy, qz + qz + xx, yy, wx = qx * x2, qy * y2, qw * x2 + xy, yz, wy = qx * y2, qy * z2, qw * y2 + xz, zz, wz = qx * z2, qz * z2, qw * z2 + + return np.concatenate([ + np.concatenate([1.0 - (yy + zz), xy - wz, xz + wy], axis=-1)[...,None,:], + np.concatenate([xy + wz, 1.0 - (xx + zz), yz - wx], axis=-1)[...,None,:], + np.concatenate([xz - wy, yz + wx, 1.0 - (xx + yy)], axis=-1)[...,None,:], + ], axis=-2) + +# Calculate 6d orthogonal rotation representation (ortho6d) from quaternions. +# https://github.com/papagina/RotationContinuity +def to_xform_xy(x): + + qw, qx, qy, qz = x[...,0:1], x[...,1:2], x[...,2:3], x[...,3:4] + + x2, y2, z2 = qx + qx, qy + qy, qz + qz + xx, yy, wx = qx * x2, qy * y2, qw * x2 + xy, yz, wy = qx * y2, qy * z2, qw * y2 + xz, zz, wz = qx * z2, qz * z2, qw * z2 + + return np.concatenate([ + np.concatenate([1.0 - (yy + zz), xy - wz], axis=-1)[...,None,:], + np.concatenate([xy + wz, 1.0 - (xx + zz)], axis=-1)[...,None,:], + np.concatenate([xz - wy, yz + wx], axis=-1)[...,None,:], + ], axis=-2) + +# Calculate scaled angle axis from quaternions. +def to_scaled_angle_axis(x, eps=1e-5): + return 2.0 * log(x, eps) + + +############################################# +# Calculate quaternions from other rotations. +############################################# + +# Calculate quaternions from axis angles. +def from_angle_axis(angle, axis): + c = np.cos(angle / 2.0)[..., None] + s = np.sin(angle / 2.0)[..., None] + q = np.concatenate([c, s * axis], axis=-1) + return q + +# Calculate quaternions from axis-angle. +def from_axis_angle(rots): + angle = np.linalg.norm(rots, axis=-1) + axis = rots / angle[...,None] + return from_angle_axis(angle, axis) + +# Calculate quaternions from euler angles. +def from_euler(e, order='zyx'): + axis = { + 'x': np.asarray([1, 0, 0], dtype=np.float32), + 'y': np.asarray([0, 1, 0], dtype=np.float32), + 'z': np.asarray([0, 0, 1], dtype=np.float32)} + + q0 = from_angle_axis(e[..., 0], axis[order[0]]) + q1 = from_angle_axis(e[..., 1], axis[order[1]]) + q2 = from_angle_axis(e[..., 2], axis[order[2]]) + + return mul(q0, mul(q1, q2)) + +# Calculate quaternions from rotation matrix. +def from_xform(ts): + + return normalize( + np.where((ts[...,2,2] < 0.0)[...,None], + np.where((ts[...,0,0] > ts[...,1,1])[...,None], + np.concatenate([ + (ts[...,2,1]-ts[...,1,2])[...,None], + (1.0 + ts[...,0,0] - ts[...,1,1] - ts[...,2,2])[...,None], + (ts[...,1,0]+ts[...,0,1])[...,None], + (ts[...,0,2]+ts[...,2,0])[...,None]], axis=-1), + np.concatenate([ + (ts[...,0,2]-ts[...,2,0])[...,None], + (ts[...,1,0]+ts[...,0,1])[...,None], + (1.0 - ts[...,0,0] + ts[...,1,1] - ts[...,2,2])[...,None], + (ts[...,2,1]+ts[...,1,2])[...,None]], axis=-1)), + np.where((ts[...,0,0] < -ts[...,1,1])[...,None], + np.concatenate([ + (ts[...,1,0]-ts[...,0,1])[...,None], + (ts[...,0,2]+ts[...,2,0])[...,None], + (ts[...,2,1]+ts[...,1,2])[...,None], + (1.0 - ts[...,0,0] - ts[...,1,1] + ts[...,2,2])[...,None]], axis=-1), + np.concatenate([ + (1.0 + ts[...,0,0] + ts[...,1,1] + ts[...,2,2])[...,None], + (ts[...,2,1]-ts[...,1,2])[...,None], + (ts[...,0,2]-ts[...,2,0])[...,None], + (ts[...,1,0]-ts[...,0,1])[...,None]], axis=-1)))) + +# Calculate quaternions from ortho6d. +def from_xform_xy(x): + + c2 = _fast_cross(x[...,0], x[...,1]) + c2 = c2 / np.sqrt(np.sum(np.square(c2), axis=-1))[...,None] + c1 = _fast_cross(c2, x[...,0]) + c1 = c1 / np.sqrt(np.sum(np.square(c1), axis=-1))[...,None] + c0 = x[...,0] + + return from_xform(np.concatenate([ + c0[...,None], + c1[...,None], + c2[...,None]], axis=-1)) + +# Calculate quaternions from scaled angle axis. +def from_scaled_angle_axis(x, eps=1e-5): + return exp(x / 2.0, eps) \ No newline at end of file