diff --git a/.gitignore b/.gitignore index 5cbaebc..1becfc6 100644 --- a/.gitignore +++ b/.gitignore @@ -145,7 +145,11 @@ sysinfo.txt modules/input_facsfromcsv/openface # json files -modules/output_facstojson/facsjson/ +modules/output_facstofile/facsjson +modules/output_facstofile/facscsv # deep neural network models modules/process_facsdnnfacs/models/ + +# debug data +*logging diff --git a/README.md b/README.md index 26f8fef..2a4017d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,17 @@ -# FACSvatar v0.3.1-Alpha +# FACSvatar v0.3.2-Alpha -## New +# Roadmap + +## New v0.3.2 + +* Timestamp of message receive and send per module (`if Python >= 3.7: time.time_ns(), else time.time()`) +* Simplified sending receiving messages (`facsvatarzeromq.py` now takes care of encoding / decoding and adding timestamps) +* Performance improvement: Time taken for smoothing per message reduced (asynchronous): 11.90 +/- 6.91 milliseconds to 6.83 +/- 2.79 milliseconds (pandas --> direct numpy) +* In progress: print() --> logger +* `process_facstoblend` module accepts folder argument for different AU --> Blend Shape conversions +* OpenFace modification updated to v2.0.6 + +## New v0.3.1 * OpenFace v2.0.3 * Eye movement based on eye gaze data @@ -12,28 +23,54 @@ * Voice Activity Detection (VAD) to switch DNN user * Mix participant AU / head pose data with DNN generated -TODO put video here +--- + + +## TODO v0.4.0-beta +From beta changes will be documented -## Description +* Documentation +* Python modules: + * Standardization pass over all modules / code clean-up + * Consistency fix: ROUTER / DEALER sockets use JSON formatted data + * DOC string per class and function + * Logger instead of print() statements + * Debug as option to enable logger + * File structure for proper import of modules / pip? + * Use config file (in addition to command line arguments) + config filepath argument +* Easy run: Docker container per module + Docker Compose +* Demo video +* Extra: Test FACSvatar on Android with Unity3D + +## TODO vx.x.x + +* Module management (Between modules: hearthbeat, controller, synchronized start, etc) +* Blender add-on (after Blender 2.8 release) + * New FACS face-rig when MBLAB characters facial expression system has been updated + * Facial rig for easy modification (animation purposes) +* Unreal Engine support + + +# Description Affective computing and avatar animation both share that a person's facial expression contains useful information. Up until now, these fields use different processes to obtain and use these data. FACSvatar combines both purposes in a single framework. Empower your Embodied Conversational Agents (ECAs)! * **Affective computing**: Facial expressions can not only be analyzed, but also be used to generate animation, purely on data. -* **Animators**: Capture facial expressions with just a camera and use it to animate any compatible avatar. +* **Animators**: Capture facial expressions with a standard webcam and use it to animate any compatible avatar. This interoperability is possible, because FACSvatar uses the [Facial Action Coding System (FACS)](https://en.wikipedia.org/wiki/Facial_Action_Coding_System "https://en.wikipedia.org/wiki/Facial_Action_Coding_System") by Paul Ekman as an intermediate data representation. FACS describes facial expressions in terms of muscle groups, called Action Units (AUs). By giving these AUs a value between 0-1, we can describe the contractions / relaxation of facial muscles. -[![FACSvatar demo 2018-02](https://img.youtube.com/vi/fI05lzXBj3s/0.jpg)](https://www.youtube.com/watch?v=fI05lzXBj3s) +[![FACSvatar demo 2018-09](https://img.youtube.com/vi/J2FvrIl-ypU/0.jpg)](https://www.youtube.com/watch?v=J2FvrIl-ypU) # Documentation & simple how to run -Open 3 terminals and open the project `unity_FACSvatar` in Unity 3D (2017.3) +Open 3 terminals and open the project `unity_FACSvatar` in Unity 3D (2018.2.13f1) 0. Press 'play' in the Unity editor 0. Install the PyZMQ library (ZeroMQ for Python) 0. Terminal: `python N_proxy_M_bus.py` (/modules/) -0. Terminal: `python pub_blend.py` (/modules/02_facs-to-blendshapes/) -0. Terminal: `python pub_facs.py` (/modules/01_facs-from-csv/) +0. Terminal: `python main.py` (/modules/02_facs-to-blendshapes/) +0. Terminal: `python main.py` (/modules/01_facs-from-csv/) 0. See an avatar move its head and make facial expressions! For more detailed instructions, see the [FACSvatar documentation](https://facsvatar.readthedocs.io/en/latest/). @@ -58,17 +95,16 @@ The modularity is made possible by using [ZeroMQ - brokerless messaging library] ## Detailed workings (English & 日本語) -[![FACSvatar details in English and 日本語](https://surafusoft.eu/facsvatar/files/2018/02/FACSvatar_poster_25_A4_3-liner-724x1024.png)](https://surafusoft.eu/facsvatar/files/2018/02/FACSvatar_poster_25_A4_3-liner.png) +[![FACSvatar details in English and 日本語](https://surafusoft.eu/facsvatar/files/2018/10/FACSvatar_poster_25_A4-724x1024.png)](https://surafusoft.eu/facsvatar/files/2018/10/FACSvatar_poster_25_A4.png) More can be found on the project's website: [FACSvatar homepage](https://surafusoft.eu/facsvatar/ "https://surafusoft.eu/facsvatar/"). -Note: The poster still shows Crossbar.io, but this has been replaced with ZeroMQ. - ## Software * [Blender](https://www.blender.org/) + [Manuel Bastioni Lab addon](http://www.manuelbastioni.com/) (create human models) - * [MBlab wikia](http://manuelbastionilab.wikia.com/wiki/Manuel_Bastioni_Lab_Wiki) + * [MBlab wikia](http://manuelbastionilab.wikia.com/wiki/Manuel_Bastioni_Lab_Wiki) +* [FACSHuman](https://www.michaelgilbert.fr/facshuman/) add-on for MakeHuman * [OpenFace](https://github.com/TadasBaltrusaitis/OpenFace) (extract FACS data) -* [Unity 3D](https://unity3d.com/) 2017.3 (animate in game engine) +* [Unity 3D](https://unity3d.com/) 2018.2.13f1 (animate in game engine) * [ZeroMQ (PyZMQ)](http://zeromq.org/) (distributed messaging library) * [Docker (future)](https://www.docker.com/) (|future| containerization for easy distribution) diff --git a/blender/facsvatar_zeromq.py b/blender/facsvatar_zeromq.py index 48d71ef..f6f5d71 100644 --- a/blender/facsvatar_zeromq.py +++ b/blender/facsvatar_zeromq.py @@ -21,9 +21,11 @@ class FACSvatarZeroMQ(bpy.types.Operator): _timer = None - def __init__(self, address='127.0.0.1', port='5572'): + def __init__(self, address='127.0.0.1', port='5572', head_movement=True): print("FACSvatar ZeroMQ initialising...") + self.head_movement = head_movement + # init ZeroMQ subscriber url = "tcp://{}:{}".format(address, port) ctx = zmq.Context.instance() @@ -34,10 +36,17 @@ def __init__(self, address='127.0.0.1', port='5572'): self.frame = bpy.context.scene.frame_current self.pause_loop_count = 0 + self.find_MBLabModel() + + print("FACSvatar ZeroMQ initialised") + + def find_MBLabModel(self): # get manuel bastioni character in scene self.mb_obj = None for obj in scene.objects: - if obj.name.endswith("_armature"): + print(obj) + if obj.name.endswith("_armature") or obj.name.startswith("MBlab_sk"): + print("MBLab object found!") self.mb_obj = obj self.head_bones = [self.mb_obj.pose.bones['head'], self.mb_obj.pose.bones['neck']] for bone in self.head_bones: @@ -47,15 +56,16 @@ def __init__(self, address='127.0.0.1', port='5572'): # find child *_body of MB character for child in self.mb_obj.children: - if child.name.endswith("_body"): + print(child) + + if child.name.endswith("_body") or child.name.startswith("MBlab_bd"): self.mb_body = child + print("Body found!") print(self.mb_body) # stop search, found MB object break - print("FACSvatar ZeroMQ initialised") - # set Shape Keys for chestExpansion def breathing(self, full_cycle=1): # set Shape Key values @@ -93,34 +103,49 @@ def modal(self, context, event): # self.head_json = json.loads(msg[4].decode('utf8')) msg[2] = json.loads(msg[2].decode('utf8')) - print(dir(self.mb_obj)) - - # set pose only if pose data is available and not empty - if 'pose' in msg[2] and msg[2]['pose']: - # set head rotation - if len(self.head_bones) == 2: - bpy.context.scene.objects.active = self.mb_obj - bpy.ops.object.mode_set(mode='POSE') # mode for bone rotation - - # for pose_name in enumerate(msg_json['data']['head_pose']): - pose_head = msg[2]['pose'] - self.rotate_head_bones(0, pose_head['pose_Rx']) # pitch - self.rotate_head_bones(1, pose_head['pose_Ry'], -1) # jaw - self.rotate_head_bones(2, pose_head['pose_Rz'], -1) # roll - - # set key frames - bpy.ops.object.mode_set(mode='OBJECT') # mode for key frame - self.head_bones[0].keyframe_insert(data_path="rotation_euler", frame=self.frame) - self.head_bones[1].keyframe_insert(data_path="rotation_euler", frame=self.frame) + # print(dir(self.mb_obj)) + # if object was not found in initialisation + try: + self.mb_obj + except: + self.find_MBLabModel() + + # # set pose only if pose data is available and not empty + if self.head_movement: + if 'pose' in msg[2] and msg[2]['pose']: + # set head rotation + if len(self.head_bones) == 2: + bpy.context.scene.objects.active = self.mb_obj + bpy.ops.object.mode_set(mode='POSE') # mode for bone rotation + + # for pose_name in enumerate(msg_json['data']['head_pose']): + pose_head = msg[2]['pose'] + self.rotate_head_bones(0, pose_head['pose_Rx']) # pitch + self.rotate_head_bones(1, pose_head['pose_Ry'], -1) # jaw + self.rotate_head_bones(2, pose_head['pose_Rz'], -1) # roll + + # set key frames + bpy.ops.object.mode_set(mode='OBJECT') # mode for key frame + self.head_bones[0].keyframe_insert(data_path="rotation_euler", frame=self.frame) + self.head_bones[1].keyframe_insert(data_path="rotation_euler", frame=self.frame) + + else: + print("Head bone and neck bone not found") else: - print("Head bone and neck bone not found") + print("No pose data found") else: - print("No pose data found") + print("Head movement data ignored") # set blendshapes only if blendshape data is available and not empty if 'blendshapes' in msg[2] and msg[2]['blendshapes']: + # if object was not found in initialisation + try: + self.mb_body + except: + self.find_MBLabModel() + # set all shape keys values bpy.context.scene.objects.active = self.mb_body for bs in msg[2]['blendshapes']: diff --git a/modules/controller.py b/modules/controller.py index 8f96e94..624e21a 100644 --- a/modules/controller.py +++ b/modules/controller.py @@ -42,10 +42,11 @@ def face_configuration(self, dict_config): msg['pose'] = self.slicedict(dict_config, "pose") # send message - self.pub_socket.send_multipart(["gui.face_config".encode('ascii'), # topic - str(int(time.time() * 1000)).encode('ascii'), # timestamp - json.dumps(msg).encode('utf-8') # data in JSON format or empty byte - ]) + # self.pub_socket.send_multipart(["gui.face_config".encode('ascii'), # topic + # str(int(time.time() * 1000)).encode('ascii'), # timestamp + # json.dumps(msg).encode('utf-8') # data in JSON format or empty byte + # ]) + self.pub_socket.pub(msg, "gui.face_config ") # change AU multiplier values def multiplier(self, dict_au): diff --git a/modules/facsvatarzeromq.py b/modules/facsvatarzeromq.py index b5d4384..c17207d 100644 --- a/modules/facsvatarzeromq.py +++ b/modules/facsvatarzeromq.py @@ -3,19 +3,27 @@ # Copyright (c) Stef van der Struijk. # License: GNU Lesser General Public License +import os +import sys +import inspect +from pathlib import Path, PurePath import traceback import logging from abc import ABC, abstractmethod import asyncio import zmq.asyncio from zmq.asyncio import Context +import time +import json +import csv # setup ZeroMQ publisher / subscriber class FACSvatarZeroMQ(abstractmethod(ABC)): """Base class for initializing FACSvatar ZeroMQ sockets""" - def __init__(self, pub_ip='127.0.0.1', pub_port=None, pub_key='', pub_bind=True, + def __init__(self, module_id="module", loglevel="INFO", + pub_ip='127.0.0.1', pub_port=None, pub_key='', pub_bind=True, sub_ip='127.0.0.1', sub_port=None, sub_key='', sub_bind=False, deal_ip='127.0.0.1', deal_port=None, deal_key='', deal_topic='', deal_bind=False, deal2_ip='127.0.0.1', deal2_port=None, deal2_key='', deal2_topic='', deal2_bind=False, @@ -24,81 +32,106 @@ def __init__(self, pub_ip='127.0.0.1', pub_port=None, pub_key='', pub_bind=True, **misc): """Sets-up a socket bound/connected to an url + module_id: string that identifies the module calling this class + loglevel: specifies how detailed terminal and logfile output should be xxx_ip: ip of publisher/subscriber/dealer/router xxx_port: port of publisher/subscriber/dealer/router xxx_key: key for filtering out messages (leave empty to receive all) (pub/sub only) xxx_bind: True for bind (only 1 socket can bind to 1 address) or false for connect (many can connect) """ + # get filepath of the file calling this script + frame = inspect.stack()[1] + module = inspect.getmodule(frame[0]) + file_path = Path(module.sys.argv[0]).absolute() + # print(f"path: {file_path.parts[-2]}\n\n") + # use module name in logfile + logfile = Path(file_path.parent, "logging", "logging_%s.log" % module_id) + # make logging dir if not exist + logfile.parent.mkdir(exist_ok=True) + + # set logging level; TODO logger per module / pattern instead of root + numeric_level = getattr(logging, loglevel.upper(), None) + if not isinstance(numeric_level, int): + raise ValueError('Invalid log level: %s' % loglevel) + logging.basicConfig(level=numeric_level) + logger = logging.getLogger() + fh = logging.FileHandler(filename=logfile, mode='w') + fh.setFormatter(logging.Formatter("%(asctime)s:%(levelname)s:%(message)s")) + logger.addHandler(fh) + # get ZeroMQ version - print("Current libzmq version is %s" % zmq.zmq_version()) - print("Current pyzmq version is %s" % zmq.pyzmq_version()) + logging.info("Current libzmq version is %s" % zmq.zmq_version()) + logging.info("Current pyzmq version is %s" % zmq.pyzmq_version()) self.pub_socket = None self.sub_socket = None # set-up publish socket only if a port is given if pub_port: - print("Publisher port is specified") - self.pub_socket = self.zeromq_context(pub_ip, pub_port, zmq.PUB, pub_bind) - # add variable with key - self.pub_key = pub_key - print("Publisher socket set-up complete") + logging.info("Publisher port is specified") + self.pub_socket = FACSvatarSocket(self.zeromq_context(pub_ip, pub_port, zmq.PUB, pub_bind), + pub_key, "pub.csv") + logging.info("Publisher socket set-up complete") else: - print("pub_port not specified, not setting-up publisher") + logging.info("pub_port not specified, not setting-up publisher") # set-up subscriber socket only if a port is given if sub_port: - print("Subscriber port is specified") - self.sub_socket = self.zeromq_context(sub_ip, sub_port, zmq.SUB, sub_bind) - self.sub_key = sub_key - self.sub_socket.setsockopt(zmq.SUBSCRIBE, self.sub_key.encode('ascii')) - print("Subscriber socket set-up complete") + logging.info("Subscriber port is specified") + # self.sub_socket = self.zeromq_context(sub_ip, sub_port, zmq.SUB, sub_bind) + self.sub_key = sub_key # TODO use sub_topic() instead + # self.sub_socket.setsockopt(zmq.SUBSCRIBE, self.sub_key.encode('ascii')) + + self.sub_socket = FACSvatarSocket(self.zeromq_context(sub_ip, sub_port, zmq.SUB, sub_bind), + sub_key, "sub.csv") + self.sub_socket.sub_topic() + logging.info("Subscriber socket set-up complete") else: - print("sub_port not specified, not setting-up subscriber") + logging.info("sub_port not specified, not setting-up subscriber") # set-up dealer socket only if a port is given if deal_port: - print("Dealer port is specified") + logging.info("Dealer port is specified") self.deal_socket = self.zeromq_context(deal_ip, deal_port, zmq.DEALER, deal_bind) self.deal_socket.setsockopt(zmq.IDENTITY, deal_key.encode('ascii')) # add variable with key f self.deal_topic = deal_topic - print("Dealer socket set-up complete") + logging.info("Dealer socket set-up complete") else: - print("deal_port not specified, not setting-up dealer") + logging.info("deal_port not specified, not setting-up dealer") # set-up dealer socket only if a port is given; TODO better solution for multiple same sockets if deal2_port: - print("Dealer port 2 is specified") + logging.info("Dealer port 2 is specified") self.deal2_socket = self.zeromq_context(deal2_ip, deal2_port, zmq.DEALER, deal2_bind) self.deal2_socket.setsockopt(zmq.IDENTITY, deal2_key.encode('ascii')) # add variable with key f self.deal2_topic = deal2_topic - print("Dealer 2 socket set-up complete") + logging.info("Dealer 2 socket set-up complete") else: - print("deal2_port not specified, not setting-up dealer") + logging.info("deal2_port not specified, not setting-up dealer") # set-up dealer socket only if a port is given; TODO better solution for multiple same sockets if deal3_port: - print("Dealer port 3 is specified") + logging.info("Dealer port 3 is specified") self.deal3_socket = self.zeromq_context(deal3_ip, deal3_port, zmq.DEALER, deal3_bind) self.deal3_socket.setsockopt(zmq.IDENTITY, deal3_key.encode('ascii')) # add variable with key f self.deal3_topic = deal3_topic - print("Dealer 3 socket set-up complete") + logging.info("Dealer 3 socket set-up complete") else: - print("deal3_port not specified, not setting-up dealer") + logging.info("deal3_port not specified, not setting-up dealer") # set-up router socket only if a port is given if rout_port: - print("Router port is specified") + logging.info("Router port is specified") self.rout_socket = self.zeromq_context(rout_ip, rout_port, zmq.ROUTER, rout_bind) - print("Router socket set-up complete") + logging.info("Router socket set-up complete") else: - print("rout_port not specified, not setting-up router") + logging.info("rout_port not specified, not setting-up router") - print("ZeroMQ sockets successfully set-up\n") + logging.info("ZeroMQ sockets successfully set-up\n") # extra named arguments self.misc = misc @@ -112,15 +145,15 @@ def zeromq_context(self, ip, port, socket_type, bind): """ url = "tcp://{}:{}".format(ip, port) - print("Creating ZeroMQ context on: {}".format(url)) + logging.info("Creating ZeroMQ context on: {}".format(url)) ctx = Context.instance() socket = ctx.socket(socket_type) if bind: socket.bind(url) - print("Bind to {} successful".format(url)) + logging.info("Bind to {} successful".format(url)) else: socket.connect(url) - print("Connect to {} successful".format(url)) + logging.info("Connect to {} successful".format(url)) return socket @@ -136,18 +169,202 @@ def start(self, async_func_list=None): [func() for func in async_func_list] )) except Exception as e: - print("Error with async function") + logging.critical("Error with async function") # print(e) logging.error(traceback.format_exc()) - print() finally: # TODO disconnect pub/sub pass else: - print("No functions given, nothing to start") + logging.info("No functions given, nothing to start") + + +# TODO option to enable / disable debugging +class FACSvatarSocket: + """Simplify sending messages according to FACSvatar format + + Automatically attempts to encode / decode, and data from/to JSON if not done so yet + `key` should be string or already encoded as 'ascii' + `data` should be a dict, JSON formatted string or already encoded as 'utf8' + Access ZeroMQ socket functionality through `FACSvatarSocket.socket.xxx` (e.g. `.setsockopt()` + """ + + def __init__(self, socket, key='', csv_filename="test.csv"): + self.socket = socket + self.key = key.encode('ascii') + # time previous message send or useful for start-up time before first message + self.pub_timestamp_old = time_hns() + self.sub_time_received = 0 + self.frame_count = -1 + + csv_dir = "logging" + csv_filename = "timestamps_" + csv_filename + csv_location = os.path.join(csv_dir, csv_filename) + + os.makedirs(csv_dir, exist_ok=True) + + # increase file name number if file exist + logging.info("Write timestamps to: {}".format(csv_location)) + # while os.path.exists(csv_location): + # csv_location = csv_location[:-5] + str(int(csv_location[-5]) + 1) + csv_location[-4:] + + # delete existing csv file + if os.path.exists(csv_location): + os.remove(csv_location) + + with open(csv_location, 'a') as file: + writer = csv.writer(file, delimiter=',') + writer.writerow(["msg", "time_prev", "time_now"]) + + self.csv_location = csv_location + + async def pub(self, data, key=None): + """ Publish data async + + :param data: dict, JSON formatted string or bytes encoded as 'utf-8' + :param key: string or bytes encoded as 'ascii'; send specified key instead of default + :return: + """ + + if not key: + key = self.key + else: + # check if not yet encoded + if not isinstance(key, bytes): + key = key.encode('ascii') + + # not b'' + if data: + # if data not yet bytes + if not isinstance(data, bytes): + # if data != JSON: + if not isinstance(data, str): + # change to json string + data = json.dumps(data) + + # change from string to bytes + data = data.encode('utf-8') + + # timestamp = self.time_now() + timestamp = time_hns() + timestamp_enc = str(timestamp).encode('ascii') + + # print(f"Key type: {type(key)}\nTimestamp type: {type(timestamp)}\nData type: {type(data)}") + await self.socket.send_multipart([key, timestamp_enc, data]) + + # check if in DEBUG mode for logging performance; TODO seperate? + if logging.getLogger().isEnabledFor(logging.DEBUG): + logging.debug("PUB: Time prev msg:\t\t\t{}".format(self.pub_timestamp_old)) + logging.debug("PUB: Time publishing:\t\t\t{}".format(timestamp)) + logging.debug("PUB: Difference prev msg nanosec:\t{}".format(timestamp - self.pub_timestamp_old)) + logging.debug("PUB: Difference prev msg milliseconds:\t{}".format((timestamp - self.pub_timestamp_old) / 1000000)) + + # NOT WORKING due to pub and sub not using same instance of this class + # assume module: receive msg sub --> process --> pub when sub_time_received != 0 + # print(self.sub_time_received) + # if self.sub_time_received: + # print("Module performance diff sub-pub:\t{}".format(timestamp - self.sub_time_received)) + + self.write_to_csv([self.pub_timestamp_old, timestamp]) + + self.pub_timestamp_old = timestamp + + # send message with no timestamp or data + else: + logging.info("PUB: Data finished") + await self.socket.send_multipart([key, b'', b'']) + + print() + + async def sub(self, raw=False): + """ Wait for subscribed data async + + :param raw: if False, decode (and json.loads()) key, timestamp and data; if True, return as-is (bytes) + :return: key, timestamp, data + """ + + key, timestamp, data = await self.socket.recv_multipart() + + # not received finish message b'' + if timestamp: + timestamp_decoded = int(timestamp.decode('ascii')) + + # check if in DEBUG mode for logging performance; TODO seperate? + if logging.getLogger().isEnabledFor(logging.DEBUG): + # self.sub_time_received = self.time_now() + self.sub_time_received = time_hns() + time_difference = self.sub_time_received - timestamp_decoded + logging.debug("SUB: Time data published:\t\t{}\nSUB: Time subscribed data received:\t{}\n" + "SUB: Difference nanoseconds:\t\t{}\nSUB: Difference milliseconds:\t\t{}" + .format(timestamp_decoded, self.sub_time_received, time_difference, time_difference / 1000000)) + + self.write_to_csv([timestamp_decoded, self.sub_time_received]) + + # byte data + if raw: + return key, timestamp, data + # decode data + else: + data = data.decode('utf-8') + # # check not empty byte string b'' + # if data: + data = json.loads(data) + + return key.decode('ascii'), timestamp_decoded, data + + else: + # key, '', '' + return key.decode('ascii'), timestamp.decode('ascii'), data.decode('utf-8') + + # TODO check if single key or list + def sub_topic(self, key=None, unsub_all=False): + """ Subscribe to a (new) key + + :param key: set new self.key and subscribe; if None, only subscribe to self.key + :param unsub_all: if True, unsubscribe all keys + """ + + # TODO multiple sub keys + if unsub_all: + self.socket.setsockopt(zmq.UNSUBSCRIBE, self.key) + + if isinstance(key, str): + self.key = key.encode('ascii') + elif isinstance(key, bytes): + self.key = key + + self.socket.setsockopt(zmq.SUBSCRIBE, self.key) + + def write_to_csv(self, data): + logging.debug("Storing time data to csv") + + with open(self.csv_location, 'a') as file: + writer = csv.writer(file, delimiter=',') + # add frame no to beginning of data list + data.insert(0, self.frame_count) + # write data to csv + writer.writerow(data) + # writer.writerow(self.frame_count, data) + + self.frame_count += 1 + + +# @staticmethod +def time_hns(): + """Return time in 100 nanoseconds (more precise with >= python 3.7)""" + + # Python 3.7 or newer use nanoseconds + if (sys.version_info.major == 3 and sys.version_info.minor >= 7) or sys.version_info.major >= 4: + # 100 nanoseconds / 0.1 microseconds + time_now = int(time.time_ns() / 100) + else: + # timestamp = int(time.time() * 1000) + # timestamp = timestamp.to_bytes((timestamp.bit_length() + 7) // 8, byteorder='big') + + # match 100 nanoseconds / 0.1 microseconds + time_now = int(time.time() * 10000000) # time.time() + # time_now = time.time() - # @abstractmethod - # async def pub(self): - # pass + return time_now diff --git a/modules/input_facsfromcsv/pub_facs.py b/modules/input_facsfromcsv/main.py similarity index 82% rename from modules/input_facsfromcsv/pub_facs.py rename to modules/input_facsfromcsv/main.py index 0ecdd70..702c3cb 100644 --- a/modules/input_facsfromcsv/pub_facs.py +++ b/modules/input_facsfromcsv/main.py @@ -17,6 +17,7 @@ import json import asyncio import pandas as pd +import logging # FACSvatar imports; if statement for documentation @@ -24,10 +25,10 @@ # TODO work irrespectively of folder # sys.path.append(".") sys.path.append("..") - from facsvatarzeromq import FACSvatarZeroMQ + from facsvatarzeromq import FACSvatarZeroMQ, time_hns from openfacefiltercsv import FilterCSV else: - from modules.facsvatarzeromq import FACSvatarZeroMQ + from modules.facsvatarzeromq import FACSvatarZeroMQ, time_hns from .openfacefiltercsv import FilterCSV @@ -48,9 +49,6 @@ def gather_csv_list(self, csv_folder_raw, csv_arg): # get all csv files in folder raw csv_raw = self.search_csv(csv_folder_raw) print(csv_raw) - # folder not found, return empty list - # if not csv_raw: - # return [] # rename folder to folder_clean csv_folder_clean = csv_folder_raw.parent / (csv_folder_raw.parts[-1] + '_clean') @@ -67,7 +65,6 @@ def gather_csv_list(self, csv_folder_raw, csv_arg): if raw not in csv_clean: # call clean on csv and save in clean folder self.filter_csv.clean_controller(csv_folder_raw / raw, csv_folder_clean) - # self.filter_csv() # use argument to determine which csv files will be returned for message generation csv_message_list = [] @@ -155,8 +152,11 @@ def search_csv(self, csv_path, csv_arg="*", full_path=False): class OpenFaceMessage: - def __init__(self): # timestamp=b'', frame_no=b'', confidence=b'', pose=b'', gaze=b'', au_regression=b'' + """OpenFace csv based Dataframe to ZeroMQ message""" + + def __init__(self, smooth=True): self.msg = dict() + self.smooth = smooth def set_df(self, df_csv): self.df_csv = df_csv @@ -199,6 +199,9 @@ def set_msg(self, frame_tracker): self.msg['frame'] = int(row['frame']) self.msg['timestamp'] = row['timestamp'] + if not self.smooth: + self.msg['smooth'] = False + # check confidence high enough, else return None as data if self.msg['confidence'] >= .7: # au_regression in message @@ -212,38 +215,21 @@ def set_msg(self, frame_tracker): self.msg['gaze'] = {} self.msg['gaze']['gaze_angle_x'] = eye_angle[0] self.msg['gaze']['gaze_angle_y'] = eye_angle[1] - - # set all to 0 (otherwise smoothing problems) - #self.msg['au_r']['AU61'] = 0 - #self.msg['au_r']['AU62'] = 0 - #self.msg['au_r']['AU63'] = 0 - #self.msg['au_r']['AU64'] = 0 - - # eye_angle_x left - #if eye_angle[0] < 0: - # self.msg['au_r']['AU61'] = min(eye_angle[0]*-1, 1.0) - # eye_angle_x right - #else: - # self.msg['au_r']['AU62'] = min(eye_angle[0], 1.0) - - # eye_angle_y up - #if eye_angle[1] >= 0: - # self.msg['au_r']['AU63'] = min(eye_angle[1], 1.0) - # eye_angle_y down - #else: - # self.msg['au_r']['AU64'] = min(eye_angle[1] * -1, 1.0) # head pose in message self.msg['pose'] = self.df_head_pose.loc[frame_tracker].to_dict() # print(msg['pose']) + # logging purpose; time taken from message publish to animation + self.msg['timestamp_utc'] = time_hns() # self.time_now() + def set_reset_msg(self): # init a message dict self.msg = dict() # metadata in message self.msg['frame'] = -1 - self.msg['smooth'] = False # don't smooth these data + self.msg['smooth'] = self.smooth # don't smooth these data # self.msg['confidence'] = 2.0 # au_regression in message @@ -269,7 +255,7 @@ class OpenFaceMsgFromCSV: """ - def __init__(self, csv_arg, csv_folder='openface', every_x_frames=1): # client + def __init__(self, csv_arg, csv_folder='openface', every_x_frames=1, reset_frames=0, smooth=True): # client """ generates messages from OpenFace .csv files @@ -281,9 +267,11 @@ def __init__(self, csv_arg, csv_folder='openface', every_x_frames=1): # client self.crawler = CrawlerCSV() self.csv_list = self.crawler.gather_csv_list(csv_folder, csv_arg) print(f"using csv files: {self.csv_list}") - self.reset_msg = OpenFaceMessage() + self.reset_msg = OpenFaceMessage(False) self.reset_msg.set_reset_msg() self.every_x_frames = every_x_frames + self.reset_frames = reset_frames + self.smooth = smooth # loop over all csv groups ([1 csv file] if single person, P1, P2, etc [multi csv files] async def msg_gen(self): @@ -291,7 +279,6 @@ async def msg_gen(self): print("\n\n") time_start = time.time() print(csv_group) - # sys.exit("\nCSV crawler check finished") async for i, msg in self.msg_from_csv(csv_group): print(msg) @@ -300,17 +287,15 @@ async def msg_gen(self): # return filename, timestamp and msg as JSON string yield f"p{i}." + csv_group[i].stem, timestamp - time_start, json.dumps(msg) - # continue frame count - # frame = msg['frame'] - # self.reset_msg.msg['frame'] = frame - - # send few empty messages when csv group is done - await asyncio.sleep(1) - for i in range(5): - # self.reset_msg.msg['frame'] += i - await asyncio.sleep(.05) - yield "reset", timestamp - time_start, json.dumps(self.reset_msg.msg) - await asyncio.sleep(.2) + # send empty frames + if self.reset_frames > 0: + # send few empty messages when csv group is done + await asyncio.sleep(.5) + for i in range(self.reset_frames): + # self.reset_msg.msg['frame'] += i + await asyncio.sleep(.1) + yield "reset", timestamp - time_start, json.dumps(self.reset_msg.msg) + await asyncio.sleep(.2) # return that messages are finished (Python >= 3.6) yield None @@ -335,23 +320,12 @@ async def msg_from_csv(self, csv_group): df_csv = pd.read_csv(csv) # FilterCSV(csv).df_csv print(df_csv.head()) - # # check df same length when using multi-session - # if df_au_row_count != 0: - # if not df_au_row_count == df_csv.shape[0]: - # sys.exit(f"rowcount of csv files not the same: {csv_group}") - # - # # if first dataframe, set number of rows - # else: - # # get number of rows in dataframe; - # df_au_row_count = df_csv.shape[0] - # print("Data rows in data frame: {}".format(df_au_row_count)) - if df_csv.shape[0] > df_au_row_count: df_au_row_count = df_csv.shape[0] print("Data rows in data frame: {}".format(df_au_row_count)) # create msg object with dataframe info - ofmsg = OpenFaceMessage() + ofmsg = OpenFaceMessage(smooth=self.smooth) ofmsg.set_df(df_csv) ofmsg.df_split() ofmsg_list.append(ofmsg) @@ -377,9 +351,10 @@ async def msg_from_csv(self, csv_group): print("waiting {} seconds before sending next message".format(time_sleep)) # don't sleep negative time - if time_sleep >= 0: + if time_sleep > 0: # currently can send about 3000 fps await asyncio.sleep(time_sleep) # time_sleep (~0.031) + # print("Test mode, no sleep: {}".format(time_sleep)) # reduce frame rate if frame_tracker % self.every_x_frames == 0: @@ -398,8 +373,10 @@ class FACSvatarMessages(FACSvatarZeroMQ): def __init__(self, **kwargs): super().__init__(**kwargs) # init class to process .csv files + logging.debug(f"{self.misc['smooth']}") self.openface_msg = OpenFaceMsgFromCSV(self.misc['csv_arg'], self.misc['csv_folder'], - int(self.misc['every_x_frames'])) + int(self.misc['every_x_frames']), int(self.misc['reset_frames']), + self.misc['smooth']) # publishes facs values per frame to subscription key 'facs' async def facs_pub(self): @@ -412,15 +389,7 @@ async def facs_pub(self): print(msg) # send message if we have data if msg: - # reduce number of messages - # if msg_count % 3 == 0: - await self.pub_socket.send_multipart([(self.pub_key + "." + msg[0]).encode('ascii'), # topic - str(int(time.time() * 1000)).encode('ascii'), # timestamp - #int(msg[1]*1000).to_bytes(4, byteorder='big'), # timestamp - msg[2].encode('utf-8') # data in JSON format or empty byte - ]) - # else: - # print("Skipping message") + await self.pub_socket.pub(msg[2], key=self.pub_socket.key.decode('ascii') + "." + msg[0]) msg_count += 1 @@ -429,12 +398,30 @@ async def facs_pub(self): print("No more messages to publish; FACS done") # tell network messages finished (timestamp == data == None) - await self.pub_socket.send_multipart([self.pub_key.encode('ascii'), b'', b'']) + await self.pub_socket.pub('') + + +# cast argument to bool +# https://stackoverflow.com/questions/15008758/parsing-boolean-values-with-argparse +def str2bool(v): + if v.lower() in ('no', 'false', 'f', 'n', '0'): + return False + else: + return True if __name__ == '__main__': # command line arguments parser = argparse.ArgumentParser() + + # logging commandline arguments + parser.add_argument("--module_id", default="openfaceoffline_1", + help="Module id for different instances of same module") + parser.add_argument("--loglevel", default=argparse.SUPPRESS, + help="Specify how detailed the terminal/logfile output should be;" + "DEBUG, INFO, WARNING, ERROR or CRITICAL; Default: INFO") + + # publisher setup commandline arguments parser.add_argument("--pub_ip", default=argparse.SUPPRESS, help="IP (e.g. 192.168.x.x) of where to pub to; Default: 127.0.0.1 (local)") parser.add_argument("--pub_port", default="5570", @@ -443,6 +430,8 @@ async def facs_pub(self): help="Key for filtering message; Default: openface") parser.add_argument("--pub_bind", default=False, help="True: socket.bind() / False: socket.connect(); Default: False") + + # module specific commandline arguments parser.add_argument("--csv_arg", default="demo", help="specific csv (allows for wildcard *), " "-2: message all csv in specified folder, " @@ -452,6 +441,10 @@ async def facs_pub(self): help="Name of folder with csv files; Default: openface") parser.add_argument("--every_x_frames", default="1", help="Send every x frames a msg; Default 1 (all)") + parser.add_argument("--reset_frames", default="0", + help="Number of reset data messages (AU=0, head_pose=0) to send after reading file finishes") + parser.add_argument("--smooth", default=True, type=str2bool, + help="Whether AU and head pose data should be smoothed.") args, leftovers = parser.parse_known_args() print("The following arguments are used: {}".format(args)) diff --git a/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p0.csv b/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p0.csv index 6462470..d0f2ff1 100644 --- a/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p0.csv +++ b/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p0.csv @@ -1200,3 +1200,603 @@ frame,timestamp,confidence,success,gaze_angle_x,gaze_angle_y,pose_Rx,pose_Ry,pos 1198,20.638,0.98,1,-0.009,0.352,0.215,0.138,-0.006,0.038,0.062,0.214,0,0,0.066,0,0,0,0.194,0,0.134,0.01,0.044,0,0,0.21 1199,20.655,0.93,1,-0.065,0.434,0.247,0.152,-0.018,0.038,0.07,0.21,0.018,0,0.088,0,0,0,0.204,0,0.144,0.042,0.014,0,0.01,0.334 1200,20.673,0.98,1,-0.012,0.488,0.237,0.134,0.001,0.046,0.068,0.21,0.026,0,0.03,0,0,0,0.21,0,0.144,0.042,0,0,0.01,0.402 +1201,20.69,0.88,1,0,0.486,0.25,0.144,-0.018,0.026,0.064,0.216,0.036,0,0.07,0,0,0,0.224,0,0.14,0.044,0.02,0,0.01,0.396 +1202,20.707,0.98,1,-0.012,0.476,0.209,0.117,0.005,0.032,0.05,0.254,0.048,0,0.112,0.004,0,0,0.25,0,0.134,0.034,0.022,0,0,0.386 +1203,20.724,0.98,1,-0.031,0.436,0.228,0.13,-0.013,0.022,0.026,0.272,0.046,0,0.176,0.004,0,0,0.254,0,0.15,0.046,0.022,0,0,0.356 +1204,20.742,0.93,1,-0.03,0.415,0.259,0.144,-0.026,0.014,0.002,0.272,0.036,0,0.19,0.004,0,0,0.266,0,0.17,0.042,0.03,0,0,0.282 +1205,20.759,0.98,1,0.005,0.392,0.239,0.132,-0.004,0.008,0.038,0.272,0.006,0,0.184,0,0,0,0.248,0,0.182,0.026,0.046,0,0,0.184 +1206,20.776,0.93,1,-0.032,0.364,0.246,0.138,-0.02,0,0.036,0.254,0,0,0.148,0,0,0,0.242,0,0.186,0.012,0.08,0,0,0.08 +1207,20.793,0.98,1,-0.066,0.32,0.242,0.135,-0.003,0,0.036,0.246,0,0,0.114,0,0,0,0.214,0,0.178,0.002,0.078,0,0,0.026 +1208,20.81,0.98,1,-0.07,0.306,0.244,0.142,-0.017,0,0.01,0.218,0,0,0.072,0,0,0,0.208,0,0.182,0.006,0.098,0,0,0 +1209,20.828,0.98,1,-0.069,0.289,0.235,0.135,-0.001,0,0.01,0.198,0,0,0.05,0,0,0,0.188,0,0.178,0.006,0.088,0,0,0 +1210,20.845,0.93,1,-0.074,0.288,0.236,0.14,-0.016,0,0.01,0.19,0,0,0.046,0,0,0,0.208,0,0.184,0.006,0.102,0,0,0 +1211,20.862,0.98,1,-0.076,0.28,0.224,0.132,0.001,0,0,0.19,0,0,0.03,0,0,0,0.196,0,0.166,0,0.092,0,0,0 +1212,20.879,0.93,1,-0.078,0.272,0.225,0.139,-0.014,0,0.01,0.196,0,0,0.048,0,0,0,0.2,0,0.152,0,0.11,0,0,0 +1213,20.897,0.98,1,-0.076,0.254,0.214,0.132,0.002,0,0.01,0.192,0,0,0.024,0,0,0,0.17,0,0.144,0,0.094,0,0,0 +1214,20.914,0.93,1,-0.073,0.251,0.216,0.139,-0.014,0,0.01,0.182,0,0,0.038,0,0,0,0.154,0,0.136,0.006,0.108,0,0,0 +1215,20.931,0.98,1,-0.075,0.248,0.204,0.131,0.002,0,0,0.18,0,0,0.016,0,0,0,0.168,0,0.13,0.006,0.092,0,0,0 +1216,20.948,0.93,1,-0.078,0.251,0.203,0.137,-0.012,0,0,0.182,0,0,0.016,0,0,0,0.17,0,0.126,0.01,0.116,0,0,0 +1217,20.966,0.98,1,-0.078,0.238,0.194,0.13,0.004,0,0,0.18,0,0,0,0,0,0,0.192,0,0.132,0.004,0.104,0,0,0 +1218,20.983,0.98,1,-0.074,0.223,0.192,0.134,-0.009,0,0,0.176,0,0,0,0,0,0,0.172,0,0.14,0.024,0.104,0,0,0 +1219,21,0.93,1,-0.069,0.215,0.193,0.138,-0.015,0,0,0.17,0,0,0,0,0,0,0.162,0,0.128,0.02,0.104,0,0,0 +1220,21.017,0.98,1,-0.073,0.227,0.183,0.129,0.003,0,0,0.186,0,0,0,0,0,0,0.128,0,0.138,0.024,0.106,0,0,0 +1221,21.034,0.98,1,-0.075,0.232,0.185,0.134,-0.01,0,0,0.192,0,0,0,0,0,0,0.116,0,0.142,0.008,0.11,0,0,0 +1222,21.052,0.93,1,-0.068,0.216,0.183,0.136,-0.015,0,0,0.2,0,0,0.01,0,0,0,0.108,0,0.136,0.008,0.11,0,0,0 +1223,21.069,0.98,1,-0.072,0.217,0.181,0.127,0.001,0,0,0.196,0,0,0.01,0,0,0,0.132,0,0.134,0.004,0.112,0,0,0 +1224,21.086,0.98,1,-0.063,0.201,0.177,0.132,-0.012,0,0,0.186,0,0,0.01,0,0,0,0.146,0,0.126,0.022,0.108,0,0,0 +1225,21.103,0.93,1,-0.065,0.2,0.174,0.135,-0.015,0,0,0.174,0,0,0,0,0,0,0.15,0,0.122,0.032,0.104,0,0,0 +1226,21.121,0.98,1,-0.064,0.198,0.172,0.123,0.001,0,0,0.166,0,0,0,0,0,0,0.142,0,0.106,0.034,0.098,0,0,0 +1227,21.138,0.98,1,-0.065,0.205,0.174,0.129,-0.011,0,0,0.17,0,0,0,0,0,0,0.148,0,0.11,0.022,0.096,0,0,0 +1228,21.155,0.98,1,-0.065,0.204,0.172,0.133,-0.015,0,0,0.174,0,0,0,0,0,0,0.156,0,0.134,0.016,0.078,0,0,0 +1229,21.172,0.98,1,-0.065,0.206,0.176,0.132,-0.016,0,0,0.178,0,0,0,0,0,0,0.156,0,0.146,0.018,0.07,0,0,0 +1230,21.189,0.98,1,-0.062,0.207,0.179,0.132,-0.018,0,0,0.174,0,0,0,0,0,0,0.142,0,0.144,0.024,0.058,0,0,0 +1231,21.207,0.93,1,-0.063,0.211,0.183,0.132,-0.02,0,0,0.17,0,0,0.004,0,0,0,0.126,0,0.142,0.036,0.06,0,0,0 +1232,21.224,0.98,1,-0.065,0.229,0.188,0.124,-0.003,0,0,0.166,0,0,0.004,0,0,0,0.128,0,0.13,0.04,0.064,0,0,0 +1233,21.241,0.98,1,-0.064,0.215,0.184,0.129,-0.014,0,0,0.162,0,0,0.004,0,0,0,0.138,0,0.14,0.042,0.07,0,0,0 +1234,21.258,0.98,1,-0.06,0.212,0.184,0.131,-0.018,0,0,0.174,0.018,0,0,0,0,0,0.142,0,0.132,0.036,0.052,0,0,0 +1235,21.276,0.93,1,-0.06,0.214,0.187,0.131,-0.021,0,0,0.176,0.018,0,0,0,0,0,0.144,0,0.13,0.056,0.052,0,0,0 +1236,21.293,0.98,1,-0.055,0.21,0.189,0.121,-0.003,0,0,0.188,0.018,0,0,0,0,0,0.154,0,0.124,0.068,0.054,0,0,0 +1237,21.31,0.98,1,-0.058,0.205,0.184,0.128,-0.014,0,0,0.17,0.002,0,0,0,0,0,0.164,0,0.13,0.062,0.062,0,0,0 +1238,21.327,0.98,1,-0.05,0.202,0.186,0.128,-0.016,0,0,0.172,0.002,0,0,0,0,0,0.168,0,0.156,0.04,0.044,0,0,0 +1239,21.345,0.93,1,-0.063,0.221,0.191,0.133,-0.019,0,0,0.162,0.002,0,0,0,0,0,0.14,0,0.146,0.03,0.04,0,0,0 +1240,21.362,0.98,1,-0.054,0.207,0.191,0.123,-0.003,0,0,0.164,0,0,0,0,0,0,0.14,0,0.154,0.04,0.048,0,0,0 +1241,21.379,0.98,1,-0.055,0.205,0.187,0.126,-0.014,0,0,0.162,0.008,0,0,0,0,0,0.126,0,0.156,0.056,0.048,0,0,0 +1242,21.396,0.93,1,-0.063,0.216,0.195,0.131,-0.018,0,0,0.164,0.008,0,0.008,0,0,0,0.136,0,0.156,0.048,0.052,0,0,0 +1243,21.413,0.98,1,-0.062,0.221,0.195,0.124,-0.002,0,0,0.17,0.008,0,0.008,0,0,0,0.146,0,0.152,0.058,0.044,0,0,0 +1244,21.431,0.98,1,-0.054,0.21,0.193,0.128,-0.013,0,0,0.168,0.006,0,0.008,0,0,0,0.162,0,0.144,0.056,0.038,0,0,0 +1245,21.448,0.93,1,-0.054,0.215,0.197,0.132,-0.017,0,0,0.174,0.006,0,0,0,0,0,0.178,0,0.156,0.068,0.038,0,0.004,0 +1246,21.465,0.98,1,-0.057,0.218,0.198,0.125,0,0,0,0.17,0.006,0,0,0,0,0,0.166,0,0.154,0.058,0.042,0,0.004,0 +1247,21.482,0.98,1,-0.055,0.21,0.194,0.13,-0.01,0,0,0.174,0.012,0,0,0,0,0,0.154,0,0.154,0.076,0.05,0,0.004,0 +1248,21.5,0.93,1,-0.058,0.206,0.193,0.132,-0.013,0,0,0.172,0.012,0,0,0,0,0,0.144,0,0.148,0.074,0.048,0,0,0 +1249,21.517,0.98,1,-0.058,0.212,0.195,0.126,0.002,0,0,0.184,0.012,0,0,0,0,0,0.148,0,0.166,0.06,0.054,0,0,0 +1250,21.534,0.93,1,-0.052,0.208,0.191,0.132,-0.01,0,0,0.176,0,0,0,0,0,0,0.152,0,0.154,0.028,0.082,0,0,0 +1251,21.551,0.98,1,-0.052,0.209,0.189,0.125,0.005,0,0,0.178,0,0,0,0,0,0,0.162,0,0.166,0.006,0.092,0,0,0 +1252,21.568,0.93,1,-0.054,0.204,0.187,0.133,-0.006,0,0,0.17,0,0,0,0,0,0,0.162,0,0.142,0.024,0.098,0,0,0 +1253,21.586,0.98,1,-0.054,0.198,0.182,0.121,0.009,0,0,0.174,0,0,0,0,0,0,0.164,0,0.148,0.022,0.092,0,0,0 +1254,21.603,0.98,1,-0.058,0.206,0.186,0.131,-0.006,0,0,0.172,0,0,0,0,0,0,0.172,0,0.142,0.022,0.084,0,0,0 +1255,21.62,0.93,1,-0.055,0.211,0.192,0.134,-0.011,0,0,0.174,0.002,0,0,0,0,0,0.162,0,0.156,0.018,0.076,0,0,0 +1256,21.637,0.98,1,-0.06,0.207,0.192,0.127,0.005,0,0,0.176,0.018,0,0,0,0,0,0.176,0,0.158,0.028,0.068,0,0,0 +1257,21.655,0.98,1,-0.055,0.209,0.191,0.132,-0.008,0,0,0.176,0.024,0,0,0,0,0,0.16,0,0.16,0.028,0.06,0,0,0 +1258,21.672,0.93,1,-0.054,0.208,0.197,0.136,-0.014,0,0,0.18,0.022,0,0,0,0,0,0.16,0,0.158,0.044,0.068,0,0,0 +1259,21.689,0.98,1,-0.062,0.218,0.197,0.128,0.003,0,0,0.19,0.006,0,0,0,0,0,0.176,0,0.17,0.032,0.072,0,0,0 +1260,21.706,0.93,1,-0.061,0.217,0.197,0.133,-0.01,0,0,0.182,0,0,0,0,0,0,0.176,0,0.174,0.032,0.094,0,0,0 +1261,21.723,0.98,1,-0.063,0.22,0.196,0.127,0.005,0.004,0,0.194,0,0,0,0,0,0,0.192,0,0.174,0.01,0.078,0,0,0 +1262,21.741,0.98,1,-0.061,0.211,0.198,0.13,-0.01,0.004,0,0.192,0.004,0,0,0,0,0,0.172,0,0.166,0.014,0.058,0,0,0 +1263,21.758,0.93,1,-0.066,0.228,0.207,0.137,-0.018,0.004,0,0.192,0.016,0,0,0,0,0,0.176,0,0.18,0.036,0.044,0,0.006,0 +1264,21.775,0.98,1,-0.071,0.234,0.205,0.129,0,0,0,0.176,0.016,0,0,0,0,0,0.166,0,0.194,0.03,0.04,0,0.006,0 +1265,21.792,0.93,1,-0.071,0.23,0.21,0.135,-0.015,0,0,0.166,0.012,0,0.002,0,0,0,0.168,0,0.2,0.04,0.07,0,0.008,0 +1266,21.81,0.98,1,-0.074,0.229,0.204,0.126,0.002,0,0,0.172,0,0,0.002,0,0,0,0.162,0,0.196,0.032,0.06,0,0.002,0 +1267,21.827,0.98,1,-0.069,0.23,0.207,0.133,-0.014,0,0,0.18,0.012,0,0.002,0,0,0,0.176,0,0.192,0.05,0.046,0,0.002,0 +1268,21.844,0.93,1,-0.066,0.236,0.215,0.137,-0.022,0,0,0.188,0.014,0,0,0,0,0,0.172,0,0.188,0.05,0.036,0,0,0 +1269,21.861,0.98,1,-0.057,0.215,0.205,0.124,-0.001,0,0,0.192,0.014,0,0,0,0,0,0.19,0,0.184,0.052,0.036,0,0,0 +1270,21.879,0.98,1,-0.067,0.244,0.214,0.131,-0.016,0,0,0.192,0.018,0,0,0,0,0,0.19,0,0.186,0.046,0.042,0,0,0 +1271,21.896,0.93,1,-0.058,0.226,0.218,0.135,-0.025,0,0,0.182,0.014,0,0,0,0,0,0.194,0,0.188,0.038,0.044,0,0,0 +1272,21.913,0.98,1,-0.068,0.237,0.213,0.129,-0.004,0,0,0.182,0.014,0,0,0,0,0,0.188,0,0.184,0.04,0.052,0,0,0 +1273,21.93,0.98,1,-0.069,0.248,0.215,0.132,-0.02,0,0,0.178,0.014,0,0,0,0,0,0.188,0,0.194,0.04,0.05,0,0,0 +1274,21.947,0.93,1,-0.068,0.254,0.224,0.137,-0.028,0,0,0.184,0.02,0,0,0,0,0,0.184,0,0.194,0.036,0.048,0,0,0 +1275,21.965,0.98,1,-0.067,0.24,0.214,0.129,-0.007,0,0,0.192,0.02,0,0,0,0,0,0.176,0,0.186,0.048,0.038,0,0,0 +1276,21.982,0.93,1,-0.069,0.248,0.215,0.136,-0.022,0,0,0.19,0.018,0,0,0,0,0,0.184,0,0.17,0.032,0.062,0,0,0 +1277,21.999,0.98,1,-0.076,0.242,0.21,0.127,-0.003,0,0,0.198,0.01,0,0,0,0,0,0.192,0,0.174,0.042,0.052,0,0,0 +1278,22.016,0.98,1,-0.074,0.249,0.214,0.131,-0.018,0,0,0.18,0.01,0,0,0,0,0,0.198,0,0.178,0.016,0.048,0,0,0 +1279,22.034,0.93,1,-0.068,0.253,0.222,0.135,-0.027,0,0,0.188,0,0,0,0,0,0,0.182,0,0.18,0.018,0.046,0,0,0 +1280,22.051,0.98,1,-0.071,0.24,0.214,0.127,-0.007,0,0,0.19,0,0,0,0,0,0,0.178,0,0.176,0.02,0.046,0,0,0 +1281,22.068,0.98,1,-0.072,0.248,0.219,0.132,-0.022,0,0,0.202,0,0,0,0,0,0,0.172,0,0.188,0.022,0.044,0,0,0 +1282,22.085,0.93,1,-0.07,0.251,0.224,0.136,-0.03,0,0,0.208,0,0,0,0,0,0,0.172,0,0.19,0.02,0.036,0,0,0 +1283,22.102,0.98,1,-0.07,0.233,0.213,0.129,-0.01,0,0,0.21,0,0,0,0,0,0,0.168,0,0.192,0.008,0.032,0,0,0 +1284,22.12,0.98,1,-0.07,0.245,0.219,0.132,-0.024,0,0,0.21,0,0,0,0,0,0,0.164,0,0.2,0.002,0.036,0,0,0 +1285,22.137,0.93,1,-0.076,0.255,0.225,0.135,-0.031,0,0,0.228,0,0,0,0,0,0,0.168,0,0.188,0.002,0.038,0,0,0 +1286,22.154,0.98,1,-0.08,0.246,0.216,0.126,-0.011,0,0,0.234,0,0,0,0,0,0,0.162,0,0.196,0.01,0.038,0,0,0 +1287,22.171,0.98,1,-0.08,0.255,0.222,0.131,-0.026,0,0,0.226,0,0,0,0,0,0,0.168,0,0.194,0.008,0.04,0,0,0 +1288,22.189,0.93,1,-0.077,0.255,0.227,0.135,-0.033,0,0,0.224,0,0,0,0,0,0,0.156,0,0.202,0.008,0.038,0,0,0 +1289,22.206,0.98,1,-0.082,0.242,0.217,0.127,-0.012,0,0,0.214,0,0,0,0,0,0,0.146,0,0.196,0.008,0.03,0,0,0 +1290,22.223,0.98,1,-0.078,0.253,0.221,0.131,-0.026,0,0,0.214,0,0,0,0,0,0,0.158,0,0.2,0.008,0.026,0,0,0 +1291,22.24,0.93,1,-0.079,0.258,0.226,0.135,-0.033,0,0,0.194,0,0,0,0,0,0,0.154,0,0.204,0.008,0.028,0,0,0 +1292,22.258,0.98,1,-0.083,0.246,0.215,0.125,-0.012,0,0,0.196,0,0,0.004,0.002,0,0,0.16,0,0.204,0,0.036,0,0,0 +1293,22.275,0.98,1,-0.077,0.257,0.211,0.125,-0.025,0,0,0.204,0,0,0.004,0.002,0,0,0.154,0,0.202,0,0.038,0,0,0 +1294,22.292,0.93,1,-0.077,0.252,0.226,0.133,-0.033,0,0,0.214,0.004,0,0.004,0.002,0,0,0.168,0,0.214,0.004,0.04,0,0,0 +1295,22.309,0.98,1,-0.076,0.251,0.218,0.125,-0.012,0,0,0.214,0.004,0,0,0,0,0,0.172,0,0.206,0.004,0.034,0,0,0 +1296,22.326,0.98,1,-0.074,0.26,0.222,0.13,-0.028,0,0,0.212,0.004,0,0,0,0,0,0.16,0,0.212,0.012,0.028,0,0,0 +1297,22.344,0.98,1,-0.075,0.261,0.228,0.132,-0.035,0,0,0.21,0,0,0,0.012,0,0,0.164,0,0.228,0.008,0.004,0,0,0 +1298,22.361,0.98,1,-0.069,0.283,0.225,0.127,-0.04,0,0,0.206,0.004,0,0,0.026,0,0,0.18,0,0.26,0.008,0,0,0,0 +1299,22.378,0.98,1,-0.065,0.289,0.232,0.128,-0.045,0,0,0.206,0.004,0,0,0.034,0,0,0.19,0,0.27,0,0,0,0,0 +1300,22.395,0.98,1,-0.059,0.295,0.236,0.128,-0.048,0,0,0.21,0.004,0,0,0.026,0,0,0.166,0,0.27,0,0,0,0,0 +1301,22.413,0.98,1,-0.058,0.292,0.237,0.128,-0.048,0.004,0,0.22,0,0,0,0.018,0,0,0.15,0,0.276,0,0,0,0,0 +1302,22.43,0.98,1,-0.055,0.294,0.238,0.128,-0.049,0.01,0,0.228,0,0,0,0.016,0,0,0.136,0,0.288,0,0,0,0,0 +1303,22.447,0.98,1,-0.056,0.297,0.241,0.127,-0.05,0.014,0,0.234,0,0,0,0.02,0,0,0.144,0,0.306,0,0,0,0,0 +1304,22.464,0.98,1,-0.052,0.295,0.239,0.128,-0.05,0.026,0,0.238,0,0,0,0.022,0,0,0.14,0,0.314,0,0,0,0,0 +1305,22.481,0.98,1,-0.057,0.3,0.242,0.128,-0.051,0.036,0,0.244,0,0,0,0.02,0,0,0.152,0.006,0.32,0,0,0,0,0 +1306,22.499,0.98,1,-0.05,0.312,0.241,0.128,-0.052,0.054,0,0.246,0,0,0,0.016,0,0,0.174,0.01,0.318,0,0,0,0,0 +1307,22.516,0.98,1,-0.055,0.306,0.239,0.128,-0.052,0.06,0,0.238,0,0,0,0.026,0,0,0.178,0.018,0.318,0,0,0,0,0 +1308,22.533,0.98,1,-0.055,0.3,0.241,0.128,-0.052,0.066,0,0.24,0,0,0,0.026,0,0,0.182,0.024,0.326,0,0,0,0,0 +1309,22.55,0.98,1,-0.053,0.304,0.24,0.128,-0.052,0.066,0,0.238,0,0,0,0.034,0,0,0.166,0.024,0.324,0,0,0,0,0 +1310,22.568,0.98,1,-0.057,0.305,0.243,0.129,-0.052,0.054,0,0.232,0,0,0,0.016,0,0,0.154,0.014,0.312,0,0,0,0,0 +1311,22.585,0.98,1,-0.068,0.294,0.255,0.129,-0.036,0.044,0,0.236,0,0,0,0.014,0,0,0.136,0.004,0.282,0.018,0,0,0,0 +1312,22.602,0.98,1,-0.064,0.289,0.246,0.131,-0.044,0.032,0,0.24,0,0,0,0.014,0,0,0.116,0,0.264,0.018,0,0,0,0 +1313,22.619,0.98,1,-0.064,0.294,0.233,0.129,-0.045,0.038,0,0.254,0,0,0,0.018,0,0,0.12,0,0.264,0.018,0,0,0,0 +1314,22.637,0.98,1,-0.065,0.291,0.243,0.133,-0.047,0.026,0,0.24,0,0,0,0.016,0,0,0.126,0,0.27,0,0,0,0,0 +1315,22.654,0.98,1,-0.064,0.284,0.244,0.126,-0.03,0.036,0,0.238,0,0,0,0.01,0,0,0.144,0.008,0.276,0,0,0,0,0 +1316,22.671,0.98,1,-0.062,0.285,0.238,0.13,-0.041,0.03,0,0.238,0,0,0,0.01,0,0,0.15,0.008,0.284,0,0,0,0,0 +1317,22.688,0.98,1,-0.061,0.291,0.231,0.13,-0.044,0.05,0,0.25,0,0,0,0.016,0,0,0.14,0.024,0.28,0,0,0,0,0 +1318,22.705,0.98,1,-0.059,0.302,0.236,0.132,-0.046,0.032,0,0.242,0,0,0,0.012,0,0,0.126,0.016,0.268,0,0,0,0,0 +1319,22.723,0.98,1,-0.066,0.294,0.244,0.129,-0.03,0.026,0,0.234,0,0,0,0.008,0,0,0.124,0.018,0.256,0,0,0,0,0 +1320,22.74,0.98,1,-0.067,0.303,0.245,0.13,-0.042,0.012,0,0.226,0,0,0,0.002,0,0,0.136,0.004,0.248,0,0,0,0,0 +1321,22.757,0.98,1,-0.064,0.309,0.243,0.133,-0.045,0.018,0,0.232,0,0,0,0.002,0,0,0.136,0.004,0.248,0,0,0,0,0 +1322,22.774,0.98,1,-0.065,0.304,0.245,0.126,-0.027,0.016,0,0.234,0,0,0,0,0,0,0.12,0,0.242,0,0,0,0,0 +1323,22.792,0.98,1,-0.063,0.303,0.247,0.132,-0.04,0.01,0,0.234,0,0,0,0,0,0,0.124,0,0.216,0,0,0,0,0 +1324,22.809,0.98,1,-0.068,0.287,0.237,0.127,-0.02,0.026,0,0.246,0,0,0,0,0,0,0.152,0,0.204,0.008,0,0,0,0 +1325,22.826,0.98,1,-0.067,0.286,0.241,0.133,-0.034,0.036,0,0.254,0,0,0,0.002,0,0,0.164,0,0.194,0.02,0,0,0,0 +1326,22.843,0.98,1,-0.069,0.294,0.248,0.135,-0.041,0.036,0,0.25,0,0,0,0.002,0,0,0.15,0,0.196,0.02,0,0,0,0 +1327,22.86,0.98,1,-0.074,0.289,0.238,0.127,-0.02,0.026,0,0.236,0,0,0,0.002,0,0,0.152,0,0.196,0.012,0,0,0,0 +1328,22.878,0.98,1,-0.072,0.291,0.244,0.132,-0.034,0.022,0,0.216,0.006,0,0,0.006,0,0,0.164,0,0.2,0.002,0,0,0,0 +1329,22.895,0.98,1,-0.069,0.294,0.248,0.135,-0.041,0.022,0,0.214,0.006,0,0,0.006,0,0,0.172,0,0.196,0.002,0,0,0,0 +1330,22.912,0.98,1,-0.069,0.286,0.237,0.126,-0.02,0.016,0,0.212,0.01,0,0.008,0.006,0,0,0.166,0,0.188,0.018,0,0,0,0 +1331,22.929,0.98,1,-0.074,0.284,0.237,0.132,-0.033,0.012,0,0.228,0.008,0,0.008,0.006,0,0,0.172,0.006,0.188,0.016,0,0,0,0 +1332,22.947,0.98,1,-0.075,0.298,0.247,0.133,-0.041,0.012,0,0.218,0.016,0,0.008,0.006,0,0,0.184,0.006,0.202,0.016,0.006,0,0,0 +1333,22.964,0.98,1,-0.07,0.282,0.233,0.125,-0.018,0.014,0,0.22,0.018,0,0,0.006,0,0,0.174,0.006,0.194,0.002,0.006,0,0,0 +1334,22.981,0.98,1,-0.065,0.28,0.236,0.13,-0.032,0.01,0,0.208,0.026,0,0,0,0,0,0.17,0,0.182,0.002,0.006,0,0,0 +1335,22.998,0.93,1,-0.06,0.287,0.245,0.132,-0.04,0.01,0,0.212,0.036,0,0,0,0,0,0.17,0,0.186,0.002,0.014,0,0,0 +1336,23.016,0.98,1,-0.07,0.27,0.234,0.125,-0.018,0.006,0,0.218,0.04,0,0,0,0,0,0.182,0,0.196,0.006,0.014,0,0,0 +1337,23.033,0.98,1,-0.072,0.272,0.238,0.13,-0.034,0.012,0,0.22,0.034,0,0,0,0,0,0.182,0.002,0.206,0.012,0.014,0,0,0 +1338,23.05,0.93,1,-0.069,0.282,0.248,0.134,-0.041,0.012,0,0.222,0.04,0,0,0,0,0,0.192,0.002,0.214,0.012,0.012,0,0,0 +1339,23.067,0.98,1,-0.073,0.269,0.238,0.126,-0.02,0.024,0,0.208,0.044,0,0,0,0,0,0.178,0.002,0.224,0.006,0.012,0,0,0 +1340,23.084,0.98,1,-0.069,0.268,0.241,0.132,-0.034,0.022,0,0.208,0.052,0,0,0,0,0,0.18,0.004,0.228,0,0.012,0,0,0 +1341,23.102,0.93,1,-0.057,0.261,0.247,0.133,-0.042,0.022,0,0.214,0.05,0,0,0,0,0,0.172,0.004,0.222,0,0.012,0,0,0 +1342,23.119,0.98,1,-0.06,0.249,0.235,0.123,-0.02,0.008,0,0.218,0.054,0,0,0,0,0,0.158,0.004,0.212,0,0.012,0,0,0 +1343,23.136,0.98,1,-0.062,0.258,0.239,0.129,-0.035,0.032,0.002,0.218,0.038,0,0,0,0,0,0.152,0.002,0.2,0,0.012,0,0,0 +1344,23.153,0.93,1,-0.054,0.263,0.244,0.132,-0.042,0.032,0.002,0.212,0.028,0,0,0,0,0,0.14,0.002,0.186,0,0.01,0,0,0 +1345,23.171,0.98,1,-0.055,0.249,0.229,0.122,-0.019,0.034,0.002,0.208,0.028,0,0,0,0,0,0.162,0.002,0.188,0,0.01,0,0,0 +1346,23.188,0.98,1,-0.066,0.257,0.234,0.129,-0.034,0.012,0,0.208,0.066,0,0,0,0,0,0.16,0,0.192,0,0.01,0,0,0 +1347,23.205,0.98,1,-0.062,0.27,0.24,0.131,-0.04,0.026,0,0.224,0.064,0,0,0,0,0,0.158,0,0.216,0,0,0,0,0 +1348,23.222,0.98,1,-0.06,0.276,0.24,0.129,-0.044,0.038,0,0.238,0.048,0,0,0.004,0,0,0.15,0,0.23,0,0,0,0,0 +1349,23.239,0.98,1,-0.063,0.278,0.25,0.132,-0.048,0.032,0,0.238,0.04,0,0.004,0.004,0,0,0.15,0,0.236,0,0,0,0,0 +1350,23.257,0.98,1,-0.067,0.275,0.242,0.126,-0.026,0.016,0,0.232,0.03,0,0.004,0.004,0,0,0.154,0.004,0.23,0,0,0,0,0 +1351,23.274,0.98,1,-0.064,0.272,0.244,0.133,-0.038,0.002,0,0.216,0.048,0,0.004,0,0,0,0.154,0.004,0.21,0,0.01,0,0,0 +1352,23.291,0.98,1,-0.065,0.264,0.23,0.122,-0.015,0.008,0,0.208,0.028,0,0.018,0,0,0,0.164,0.004,0.196,0,0.01,0,0,0 +1353,23.308,0.98,1,-0.066,0.271,0.234,0.129,-0.032,0.008,0,0.212,0.028,0,0.018,0,0,0,0.16,0,0.188,0,0.014,0,0,0 +1354,23.326,0.93,1,-0.064,0.273,0.236,0.133,-0.038,0.008,0,0.212,0.02,0,0.018,0,0,0,0.158,0,0.192,0,0.02,0,0,0 +1355,23.343,0.98,1,-0.065,0.262,0.223,0.122,-0.015,0.004,0,0.222,0.014,0,0,0,0,0,0.162,0,0.202,0,0.03,0,0,0 +1356,23.36,0.98,1,-0.064,0.265,0.229,0.129,-0.029,0.004,0,0.208,0.014,0,0,0,0,0,0.156,0,0.198,0,0.026,0,0,0 +1357,23.377,0.98,1,-0.066,0.272,0.232,0.13,-0.035,0.004,0,0.22,0.004,0,0.002,0,0,0,0.17,0,0.204,0,0.01,0,0,0 +1358,23.395,0.98,1,-0.06,0.272,0.239,0.131,-0.039,0.004,0,0.226,0.002,0,0.002,0,0,0,0.154,0,0.22,0,0,0,0,0 +1359,23.412,0.98,1,-0.05,0.288,0.235,0.126,-0.043,0.012,0,0.236,0.002,0,0.002,0.006,0,0,0.156,0,0.242,0,0,0,0,0 +1360,23.429,0.98,1,-0.043,0.286,0.253,0.13,-0.048,0.018,0,0.24,0.002,0,0,0.014,0,0,0.134,0,0.252,0,0,0,0,0 +1361,23.446,0.98,1,-0.053,0.302,0.245,0.126,-0.048,0.028,0,0.238,0,0,0,0.02,0,0,0.124,0,0.242,0,0,0,0,0 +1362,23.463,0.93,1,-0.058,0.293,0.258,0.131,-0.05,0.038,0,0.238,0.008,0,0.014,0.016,0,0,0.126,0,0.232,0,0,0,0,0 +1363,23.481,0.98,1,-0.058,0.278,0.25,0.125,-0.03,0.04,0,0.238,0.022,0,0.014,0.008,0,0,0.146,0,0.232,0,0,0,0,0 +1364,23.498,0.98,1,-0.054,0.281,0.254,0.129,-0.044,0.034,0,0.242,0.038,0,0.014,0,0,0,0.156,0,0.244,0,0,0,0,0 +1365,23.515,0.98,1,-0.053,0.282,0.256,0.129,-0.048,0.034,0,0.252,0.032,0,0,0.004,0,0,0.152,0,0.246,0,0,0,0,0 +1366,23.532,0.98,1,-0.051,0.283,0.26,0.13,-0.05,0.042,0,0.258,0.02,0,0,0.008,0,0,0.126,0,0.256,0.008,0,0,0,0 +1367,23.55,0.98,1,-0.058,0.294,0.259,0.127,-0.051,0.046,0,0.268,0.004,0,0.002,0.014,0,0,0.122,0,0.26,0.008,0,0,0,0 +1368,23.567,0.98,1,-0.06,0.302,0.252,0.124,-0.05,0.056,0,0.272,0.008,0,0.002,0.014,0,0,0.142,0,0.274,0.008,0,0,0,0 +1369,23.584,0.98,1,-0.057,0.302,0.253,0.122,-0.051,0.062,0,0.282,0.024,0,0.002,0.018,0,0,0.158,0,0.278,0,0,0,0,0 +1370,23.601,0.98,1,-0.055,0.308,0.26,0.122,-0.052,0.068,0,0.28,0.024,0,0,0.014,0,0,0.164,0,0.274,0,0,0,0,0 +1371,23.618,0.98,1,-0.059,0.313,0.262,0.122,-0.053,0.056,0,0.282,0.016,0,0,0.018,0,0,0.15,0,0.266,0,0,0,0,0 +1372,23.636,0.98,1,-0.056,0.313,0.265,0.122,-0.054,0.052,0,0.294,0,0,0,0.016,0,0,0.16,0,0.254,0,0,0,0,0 +1373,23.653,0.98,1,-0.051,0.312,0.272,0.121,-0.055,0.046,0,0.312,0.01,0,0.012,0.022,0,0,0.176,0,0.244,0,0,0,0,0 +1374,23.67,0.98,1,-0.047,0.313,0.276,0.119,-0.056,0.042,0,0.336,0.054,0,0.032,0.016,0,0,0.206,0,0.24,0,0,0,0,0 +1375,23.687,0.98,1,-0.045,0.318,0.283,0.118,-0.058,0.038,0,0.35,0.084,0,0.04,0.012,0,0,0.218,0,0.246,0,0,0,0,0 +1376,23.705,0.98,1,-0.043,0.324,0.292,0.116,-0.059,0.048,0.034,0.382,0.078,0,0.032,0.004,0,0,0.24,0,0.244,0,0,0,0,0 +1377,23.722,0.98,1,-0.047,0.323,0.309,0.117,-0.059,0.082,0.072,0.418,0.052,0,0.014,0.002,0,0,0.27,0,0.222,0,0,0,0,0 +1378,23.739,0.98,1,-0.04,0.349,0.325,0.115,-0.061,0.118,0.094,0.48,0.058,0,0.04,0,0,0,0.336,0,0.204,0,0.002,0,0,0 +1379,23.756,0.98,1,-0.037,0.338,0.338,0.112,-0.061,0.15,0.116,0.548,0.064,0,0.064,0,0.014,0,0.394,0,0.194,0,0.02,0,0,0 +1380,23.774,0.98,1,-0.037,0.352,0.353,0.109,-0.056,0.152,0.124,0.614,0.046,0.008,0.082,0,0.036,0,0.446,0,0.198,0,0.04,0,0,0 +1381,23.791,0.98,1,-0.041,0.361,0.363,0.107,-0.052,0.17,0.166,0.65,0.024,0.008,0.054,0,0.048,0,0.468,0,0.198,0,0.066,0,0,0 +1382,23.808,0.98,1,-0.034,0.349,0.368,0.103,-0.048,0.188,0.18,0.658,0.022,0.008,0.032,0,0.048,0,0.476,0,0.194,0,0.08,0,0,0 +1383,23.825,0.98,1,-0.036,0.354,0.372,0.101,-0.044,0.216,0.214,0.656,0.052,0.006,0.024,0,0.046,0,0.488,0,0.184,0.006,0.086,0,0,0 +1384,23.842,0.98,1,-0.03,0.367,0.374,0.1,-0.041,0.214,0.222,0.664,0.056,0.006,0.052,0,0.044,0,0.494,0,0.17,0.006,0.078,0,0,0 +1385,23.86,0.98,1,-0.029,0.361,0.368,0.1,-0.038,0.21,0.234,0.66,0.074,0.004,0.08,0,0.034,0,0.502,0,0.166,0.006,0.068,0,0,0 +1386,23.877,0.98,1,-0.044,0.354,0.355,0.099,-0.034,0.186,0.196,0.654,0.1,0,0.088,0,0.03,0,0.472,0,0.164,0,0.05,0,0,0 +1387,23.894,0.98,1,-0.037,0.337,0.34,0.103,-0.033,0.172,0.164,0.62,0.124,0,0.074,0,0.02,0,0.442,0,0.162,0,0.04,0,0,0 +1388,23.911,0.98,1,-0.037,0.36,0.334,0.107,-0.034,0.128,0.082,0.564,0.162,0,0.074,0,0.014,0,0.396,0,0.166,0,0.03,0,0,0 +1389,23.929,0.98,1,-0.042,0.346,0.307,0.111,-0.033,0.092,0.07,0.498,0.152,0,0.082,0,0,0,0.348,0,0.182,0,0.022,0,0,0 +1390,23.946,0.98,1,-0.058,0.291,0.276,0.111,-0.026,0.05,0.03,0.448,0.154,0,0.084,0,0,0,0.298,0,0.202,0,0.014,0,0,0 +1391,23.963,0.98,1,-0.059,0.283,0.253,0.112,-0.02,0.026,0.03,0.412,0.09,0,0.058,0,0,0,0.234,0,0.22,0.016,0.002,0,0,0 +1392,23.98,0.98,1,-0.054,0.284,0.229,0.108,-0.015,0.008,0,0.374,0.042,0,0.032,0,0,0,0.2,0,0.22,0.036,0,0,0,0 +1393,23.997,0.98,1,-0.048,0.29,0.207,0.108,-0.009,0,0,0.312,0,0,0.01,0,0,0,0.16,0.002,0.212,0.048,0,0,0,0 +1394,24.015,0.98,1,-0.059,0.266,0.198,0.115,-0.008,0,0,0.252,0,0,0.002,0,0,0,0.168,0.014,0.196,0.036,0,0,0,0 +1395,24.032,0.98,1,-0.058,0.258,0.168,0.11,-0.003,0,0,0.18,0,0,0,0,0,0,0.164,0.014,0.18,0.046,0,0,0,0 +1396,24.049,0.98,1,-0.052,0.282,0.137,0.106,-0.001,0,0,0.13,0,0,0,0,0,0,0.162,0.028,0.174,0.044,0,0,0.006,0 +1397,24.066,0.98,1,-0.047,0.268,0.115,0.106,0.001,0,0,0.082,0,0,0,0,0,0,0.146,0.034,0.168,0.05,0,0,0.006,0.01 +1398,24.084,0.98,1,-0.048,0.267,0.086,0.104,0.003,0,0,0.056,0,0,0,0,0,0,0.13,0.074,0.164,0.022,0,0,0.006,0.022 +1399,24.101,0.98,1,-0.051,0.256,0.064,0.106,0.005,0,0,0.026,0,0,0,0,0,0,0.144,0.106,0.174,0.018,0,0,0,0.04 +1400,24.118,0.98,1,-0.056,0.247,0.049,0.105,0.008,0,0,0.012,0,0,0,0,0,0,0.156,0.144,0.18,0.006,0,0,0,0.054 +1401,24.135,0.98,1,-0.059,0.242,0.043,0.105,0.01,0,0,0,0,0,0,0,0,0,0.164,0.15,0.184,0.006,0,0,0,0.078 +1402,24.153,0.98,1,-0.057,0.244,0.041,0.102,0.012,0,0,0,0,0,0,0,0,0,0.162,0.174,0.2,0,0,0,0,0.09 +1403,24.17,0.98,1,-0.056,0.244,0.042,0.101,0.013,0,0,0,0,0,0,0,0,0,0.146,0.156,0.194,0,0,0,0,0.096 +1404,24.187,0.98,1,-0.06,0.251,0.044,0.099,0.016,0,0,0,0,0,0,0,0,0,0.132,0.142,0.198,0,0,0,0,0.088 +1405,24.204,0.98,1,-0.061,0.26,0.058,0.098,0.018,0,0,0,0,0,0,0,0,0,0.13,0.1,0.178,0,0,0,0.008,0.092 +1406,24.221,0.98,1,-0.063,0.27,0.08,0.097,0.02,0,0,0,0,0,0,0,0,0,0.156,0.08,0.2,0,0,0,0.01,0.078 +1407,24.239,0.98,1,-0.066,0.292,0.113,0.098,0.017,0,0,0.008,0,0,0,0,0,0,0.184,0.058,0.22,0,0,0,0.058,0.064 +1408,24.256,0.98,1,-0.069,0.314,0.146,0.103,0.012,0,0,0.02,0,0,0,0,0,0,0.176,0.038,0.246,0.002,0,0,0.05,0.038 +1409,24.273,0.98,1,-0.068,0.336,0.183,0.105,0.008,0,0,0.048,0,0,0,0,0,0,0.156,0.018,0.258,0.014,0,0,0.048,0.024 +1410,24.29,0.98,1,-0.07,0.358,0.211,0.107,0.003,0,0,0.096,0,0,0,0.006,0,0,0.138,0.018,0.266,0.014,0,0,0,0.008 +1411,24.308,0.98,1,-0.059,0.359,0.235,0.11,0,0,0,0.158,0,0,0,0.012,0,0,0.112,0.028,0.258,0.012,0,0,0,0 +1412,24.325,0.98,1,-0.06,0.371,0.252,0.106,-0.003,0,0,0.224,0,0,0,0.016,0,0,0.1,0.028,0.244,0,0,0,0,0.012 +1413,24.342,0.98,1,-0.054,0.385,0.265,0.103,-0.006,0,0,0.276,0,0,0,0.02,0,0,0.098,0.018,0.242,0,0,0,0,0.012 +1414,24.359,0.98,1,-0.042,0.386,0.289,0.102,-0.013,0.01,0,0.338,0.006,0,0,0.014,0,0,0.142,0,0.254,0,0,0,0,0.012 +1415,24.376,0.98,1,-0.033,0.401,0.313,0.101,-0.019,0.022,0,0.384,0.006,0,0.03,0.012,0,0,0.176,0,0.256,0,0,0,0,0 +1416,24.394,0.98,1,-0.034,0.389,0.332,0.101,-0.024,0.046,0,0.426,0.018,0,0.048,0.002,0,0,0.214,0,0.26,0,0,0,0,0 +1417,24.411,0.98,1,-0.04,0.394,0.333,0.1,-0.027,0.062,0,0.438,0.028,0,0.074,0.002,0,0,0.248,0,0.246,0,0,0,0,0 +1418,24.428,0.98,1,-0.029,0.406,0.337,0.098,-0.03,0.076,0,0.456,0.036,0,0.078,0.002,0,0,0.294,0,0.242,0,0,0,0,0 +1419,24.445,0.98,1,-0.02,0.417,0.343,0.096,-0.034,0.09,0.006,0.476,0.058,0,0.088,0.002,0,0,0.346,0,0.228,0,0,0,0,0 +1420,24.463,0.98,1,-0.024,0.397,0.348,0.096,-0.033,0.092,0.006,0.51,0.048,0.002,0.088,0,0.006,0,0.39,0,0.222,0,0,0,0,0 +1421,24.48,0.98,1,-0.029,0.395,0.374,0.1,-0.035,0.118,0.042,0.552,0.064,0.006,0.096,0,0.008,0,0.426,0,0.206,0,0.006,0,0,0 +1422,24.497,0.98,1,-0.034,0.386,0.379,0.098,-0.033,0.13,0.074,0.596,0.046,0.01,0.096,0,0.02,0,0.46,0,0.192,0,0.03,0,0,0 +1423,24.514,0.98,1,-0.04,0.386,0.377,0.097,-0.032,0.152,0.146,0.624,0.048,0.014,0.104,0,0.014,0,0.482,0,0.178,0,0.062,0,0,0 +1424,24.532,0.98,1,-0.036,0.384,0.384,0.096,-0.032,0.154,0.186,0.646,0.024,0.022,0.072,0,0.014,0,0.494,0,0.176,0.008,0.1,0,0,0 +1425,24.549,0.98,1,-0.036,0.39,0.392,0.094,-0.032,0.164,0.202,0.664,0.014,0.042,0.102,0,0.014,0,0.5,0,0.17,0.008,0.118,0,0,0 +1426,24.566,0.98,1,-0.034,0.381,0.39,0.094,-0.031,0.186,0.208,0.68,0.004,0.06,0.1,0,0.03,0,0.514,0,0.172,0.02,0.136,0,0,0 +1427,24.583,0.98,1,-0.034,0.402,0.394,0.092,-0.032,0.192,0.18,0.694,0.012,0.086,0.122,0,0.04,0,0.526,0,0.176,0.012,0.148,0,0,0 +1428,24.6,0.98,1,-0.028,0.391,0.398,0.093,-0.034,0.18,0.202,0.71,0.008,0.09,0.076,0,0.04,0,0.538,0,0.178,0.012,0.168,0,0,0 +1429,24.618,0.98,1,-0.026,0.391,0.397,0.093,-0.037,0.152,0.194,0.742,0.008,0.098,0.09,0,0.04,0,0.54,0.008,0.172,0,0.186,0,0,0 +1430,24.635,0.98,1,-0.019,0.394,0.396,0.092,-0.039,0.122,0.206,0.756,0,0.094,0.098,0,0.042,0,0.526,0.008,0.162,0,0.194,0,0,0 +1431,24.652,0.98,1,-0.029,0.39,0.385,0.091,-0.038,0.104,0.196,0.76,0,0.096,0.118,0,0.042,0,0.482,0.008,0.154,0,0.194,0,0,0 +1432,24.669,0.98,1,-0.035,0.385,0.381,0.091,-0.039,0.074,0.188,0.748,0,0.088,0.076,0,0.038,0,0.454,0,0.15,0,0.182,0,0,0 +1433,24.687,0.98,1,-0.036,0.382,0.374,0.092,-0.04,0.062,0.2,0.754,0,0.076,0.036,0,0.024,0,0.448,0,0.136,0,0.178,0,0,0 +1434,24.704,0.98,1,-0.037,0.381,0.369,0.094,-0.042,0.054,0.212,0.754,0,0.062,0.006,0,0.014,0,0.45,0,0.13,0,0.178,0,0,0 +1435,24.721,0.98,1,-0.039,0.37,0.363,0.093,-0.043,0.074,0.214,0.748,0,0.058,0.002,0,0,0,0.426,0,0.124,0,0.178,0,0,0 +1436,24.738,0.98,1,-0.039,0.377,0.361,0.097,-0.045,0.084,0.206,0.714,0,0.046,0,0,0,0,0.386,0,0.122,0,0.17,0,0,0 +1437,24.755,0.98,1,-0.036,0.37,0.355,0.098,-0.045,0.106,0.196,0.684,0,0.04,0,0,0,0,0.378,0,0.12,0,0.156,0,0,0 +1438,24.773,0.98,1,-0.046,0.356,0.345,0.103,-0.045,0.106,0.206,0.664,0.018,0.02,0,0,0,0,0.388,0,0.13,0,0.14,0,0,0 +1439,24.79,0.98,1,-0.057,0.341,0.339,0.105,-0.045,0.124,0.228,0.654,0.036,0.008,0,0,0,0,0.42,0,0.146,0,0.126,0,0,0 +1440,24.807,0.98,1,-0.064,0.334,0.337,0.111,-0.046,0.13,0.256,0.638,0.052,0,0.006,0,0,0,0.446,0,0.156,0,0.116,0,0,0 +1441,24.824,0.98,1,-0.073,0.333,0.335,0.115,-0.048,0.142,0.266,0.616,0.098,0,0.036,0,0,0,0.456,0,0.166,0.002,0.108,0,0,0 +1442,24.842,0.98,1,-0.075,0.332,0.33,0.118,-0.048,0.134,0.26,0.596,0.142,0,0.05,0,0,0,0.46,0,0.176,0.002,0.108,0,0,0 +1443,24.859,0.98,1,-0.067,0.322,0.324,0.119,-0.049,0.122,0.252,0.546,0.168,0,0.076,0,0,0,0.452,0,0.17,0.002,0.104,0,0,0 +1444,24.876,0.98,1,-0.067,0.315,0.31,0.122,-0.051,0.102,0.218,0.498,0.15,0,0.048,0,0,0,0.456,0,0.174,0,0.096,0,0,0 +1445,24.893,0.98,1,-0.056,0.307,0.298,0.123,-0.05,0.074,0.192,0.464,0.154,0,0.034,0,0,0,0.426,0,0.188,0,0.078,0,0,0 +1446,24.911,0.98,1,-0.053,0.297,0.297,0.127,-0.052,0.07,0.172,0.446,0.162,0,0.018,0,0,0,0.39,0,0.21,0,0.056,0,0,0 +1447,24.928,0.98,1,-0.056,0.301,0.295,0.126,-0.052,0.056,0.138,0.448,0.186,0,0.052,0,0,0,0.35,0,0.202,0,0.038,0,0,0 +1448,24.945,0.98,1,-0.055,0.305,0.289,0.125,-0.053,0.052,0.084,0.436,0.182,0,0.078,0,0,0,0.334,0,0.186,0,0.022,0,0,0 +1449,24.962,0.98,1,-0.054,0.306,0.293,0.127,-0.054,0.042,0.026,0.434,0.166,0,0.072,0,0,0,0.338,0,0.186,0,0.02,0,0,0 +1450,24.979,0.98,1,-0.055,0.31,0.292,0.127,-0.056,0.06,0.036,0.418,0.134,0,0.036,0,0,0,0.354,0,0.2,0,0.016,0,0,0 +1451,24.997,0.98,1,-0.053,0.313,0.297,0.128,-0.058,0.072,0.034,0.408,0.118,0,0.01,0,0,0,0.366,0,0.22,0,0.016,0,0,0 +1452,25.014,0.98,1,-0.05,0.311,0.299,0.128,-0.06,0.076,0.036,0.404,0.116,0,0.002,0,0,0,0.354,0,0.23,0,0.01,0,0,0 +1453,25.031,0.98,1,-0.055,0.31,0.303,0.127,-0.06,0.07,0.006,0.394,0.114,0,0.014,0,0,0,0.358,0,0.24,0,0.02,0,0,0 +1454,25.048,0.98,1,-0.048,0.311,0.311,0.127,-0.06,0.088,0.052,0.412,0.102,0,0.014,0,0,0,0.346,0,0.244,0,0.024,0,0,0 +1455,25.066,0.98,1,-0.046,0.319,0.318,0.127,-0.062,0.102,0.11,0.432,0.104,0,0.02,0,0,0,0.364,0,0.254,0,0.038,0,0,0 +1456,25.083,0.98,1,-0.05,0.326,0.329,0.126,-0.063,0.118,0.144,0.472,0.114,0,0.008,0,0,0,0.372,0,0.254,0,0.054,0,0,0 +1457,25.1,0.98,1,-0.04,0.343,0.338,0.125,-0.065,0.138,0.172,0.5,0.13,0,0.016,0,0,0,0.42,0,0.248,0,0.068,0,0,0 +1458,25.117,0.98,1,-0.029,0.355,0.349,0.124,-0.067,0.14,0.146,0.54,0.138,0,0.03,0,0,0,0.442,0,0.232,0,0.068,0,0,0 +1459,25.134,0.98,1,-0.027,0.362,0.351,0.124,-0.068,0.17,0.202,0.578,0.136,0,0.07,0,0,0,0.468,0,0.226,0,0.062,0,0,0 +1460,25.152,0.98,1,-0.039,0.352,0.354,0.122,-0.067,0.166,0.21,0.594,0.114,0,0.104,0,0,0,0.47,0,0.216,0,0.062,0,0,0 +1461,25.169,0.98,1,-0.047,0.348,0.352,0.12,-0.062,0.178,0.246,0.59,0.09,0.002,0.1,0,0,0,0.482,0,0.208,0,0.068,0,0,0 +1462,25.186,0.98,1,-0.038,0.362,0.354,0.119,-0.063,0.166,0.206,0.578,0.058,0,0.076,0,0,0,0.468,0,0.198,0,0.07,0,0,0 +1463,25.203,0.98,1,-0.036,0.363,0.351,0.118,-0.063,0.156,0.164,0.588,0.048,0.002,0.038,0,0,0,0.464,0,0.188,0,0.06,0,0,0 +1464,25.221,0.98,1,-0.026,0.376,0.352,0.12,-0.065,0.156,0.126,0.58,0.04,0,0.016,0,0,0,0.448,0,0.182,0,0.054,0,0,0 +1465,25.238,0.98,1,-0.034,0.372,0.348,0.119,-0.064,0.148,0.13,0.574,0.048,0,0.008,0,0,0,0.45,0,0.178,0,0.052,0,0,0 +1466,25.255,0.98,1,-0.037,0.346,0.338,0.121,-0.064,0.152,0.152,0.56,0.06,0,0.008,0,0,0,0.442,0,0.19,0,0.05,0,0,0 +1467,25.272,0.98,1,-0.029,0.357,0.339,0.12,-0.065,0.158,0.194,0.572,0.08,0,0.028,0,0.002,0,0.438,0,0.2,0,0.05,0,0,0 +1468,25.29,0.98,1,-0.033,0.344,0.333,0.121,-0.065,0.14,0.188,0.556,0.102,0,0.036,0,0.002,0,0.408,0,0.218,0,0.042,0,0,0 +1469,25.307,0.98,1,-0.03,0.347,0.325,0.123,-0.065,0.136,0.194,0.528,0.116,0,0.036,0,0.002,0,0.39,0,0.224,0,0.036,0,0,0 +1470,25.324,0.98,1,-0.038,0.334,0.318,0.124,-0.066,0.122,0.158,0.486,0.122,0,0.022,0,0,0,0.396,0,0.24,0,0.024,0,0,0 +1471,25.341,0.98,1,-0.033,0.333,0.313,0.125,-0.066,0.136,0.128,0.452,0.118,0,0.008,0,0,0,0.384,0,0.236,0,0.022,0,0,0 +1472,25.358,0.98,1,-0.034,0.323,0.301,0.127,-0.065,0.106,0.06,0.418,0.116,0,0.008,0,0,0,0.35,0,0.242,0,0.012,0,0,0 +1473,25.376,0.98,1,-0.043,0.293,0.289,0.127,-0.062,0.08,0.026,0.39,0.108,0,0.006,0,0,0,0.298,0,0.24,0,0.004,0,0,0 +1474,25.393,0.98,1,-0.048,0.287,0.281,0.126,-0.059,0.048,0.006,0.376,0.112,0,0.014,0,0,0,0.262,0,0.242,0,0,0,0,0 +1475,25.41,0.98,1,-0.048,0.278,0.269,0.122,-0.054,0.038,0.006,0.36,0.098,0,0.04,0,0,0,0.242,0,0.236,0,0,0,0,0 +1476,25.427,0.98,1,-0.052,0.275,0.26,0.123,-0.052,0.02,0.004,0.344,0.098,0,0.036,0.004,0,0,0.21,0,0.23,0,0,0,0,0 +1477,25.445,0.98,1,-0.051,0.281,0.252,0.124,-0.051,0.016,0.004,0.324,0.086,0,0.026,0.004,0,0,0.186,0,0.236,0,0,0,0,0 +1478,25.462,0.98,1,-0.053,0.278,0.246,0.124,-0.048,0.018,0.004,0.306,0.098,0,0,0.006,0,0,0.182,0,0.238,0,0,0,0,0 +1479,25.479,0.98,1,-0.056,0.285,0.241,0.125,-0.046,0.026,0,0.274,0.094,0,0,0.01,0,0,0.18,0,0.25,0,0,0,0,0 +1480,25.496,0.98,1,-0.055,0.289,0.236,0.124,-0.045,0.034,0,0.252,0.076,0,0,0.02,0,0,0.178,0,0.236,0,0,0,0,0 +1481,25.513,0.98,1,-0.054,0.27,0.244,0.129,-0.045,0.028,0,0.246,0.058,0,0,0.022,0,0,0.16,0.002,0.226,0,0,0,0,0 +1482,25.531,0.93,1,-0.055,0.275,0.244,0.132,-0.043,0.018,0,0.24,0.036,0,0,0.014,0,0,0.168,0.002,0.19,0,0.006,0,0,0 +1483,25.548,0.98,1,-0.06,0.266,0.222,0.122,-0.017,0.004,0,0.222,0.022,0,0,0.004,0,0,0.168,0.002,0.164,0.01,0.014,0,0,0 +1484,25.565,0.98,1,-0.058,0.258,0.207,0.126,-0.021,0,0,0.204,0,0,0,0,0,0,0.196,0,0.134,0.014,0.028,0,0,0 +1485,25.582,0.98,1,-0.058,0.259,0.199,0.126,-0.019,0,0,0.194,0,0,0,0,0,0,0.202,0,0.128,0.034,0.032,0,0,0 +1486,25.6,0.98,1,-0.063,0.256,0.191,0.126,-0.018,0,0,0.178,0,0,0,0,0,0,0.216,0,0.116,0.048,0.028,0,0,0 +1487,25.617,0.98,1,-0.066,0.257,0.188,0.128,-0.016,0,0,0.168,0,0,0,0,0,0,0.212,0,0.108,0.054,0.02,0,0,0 +1488,25.634,0.98,1,-0.066,0.25,0.178,0.127,-0.012,0,0,0.168,0,0,0,0,0,0,0.192,0,0.096,0.054,0.024,0,0,0 +1489,25.651,0.98,1,-0.062,0.242,0.173,0.127,-0.01,0,0,0.182,0,0,0,0,0,0,0.18,0,0.106,0.042,0.03,0,0,0 +1490,25.669,0.98,1,-0.05,0.227,0.169,0.124,-0.009,0,0,0.19,0,0,0,0,0,0,0.162,0,0.118,0.038,0.03,0,0,0 +1491,25.686,0.98,1,-0.054,0.228,0.166,0.126,-0.007,0,0,0.182,0,0,0,0,0,0,0.144,0,0.124,0.042,0.032,0,0.012,0 +1492,25.703,0.98,1,-0.049,0.226,0.164,0.123,-0.005,0,0,0.176,0,0,0,0,0,0,0.152,0,0.116,0.042,0.036,0,0.012,0 +1493,25.72,0.98,1,-0.049,0.222,0.164,0.124,-0.004,0,0,0.166,0,0,0,0,0,0,0.156,0,0.104,0.048,0.04,0,0.012,0 +1494,25.737,0.98,1,-0.049,0.221,0.167,0.126,-0.003,0,0,0.17,0,0,0,0,0,0,0.196,0,0.104,0.026,0.042,0,0,0 +1495,25.755,0.98,1,-0.048,0.223,0.171,0.125,-0.003,0,0,0.17,0,0,0,0,0,0,0.22,0,0.094,0.014,0.038,0,0,0 +1496,25.772,0.98,1,-0.05,0.239,0.175,0.125,-0.003,0,0,0.182,0,0,0,0,0,0,0.242,0,0.096,0,0.03,0,0,0 +1497,25.789,0.98,1,-0.041,0.259,0.185,0.126,-0.006,0,0,0.21,0,0,0.042,0,0,0,0.236,0,0.092,0,0.016,0,0,0.066 +1498,25.806,0.98,1,0.009,0.338,0.191,0.126,-0.008,0,0,0.246,0,0,0.064,0.014,0,0,0.244,0,0.108,0,0.004,0,0,0.194 +1499,25.824,0.98,1,-0.088,0.392,0.201,0.129,-0.01,0,0,0.254,0,0,0.074,0.02,0,0,0.256,0,0.112,0.016,0,0,0,0.35 +1500,25.841,0.98,1,-0.064,0.454,0.204,0.126,-0.012,0.004,0,0.25,0,0,0.048,0.024,0,0,0.274,0,0.116,0.024,0,0,0,0.434 +1501,25.858,0.98,1,-0.04,0.482,0.209,0.125,-0.014,0.004,0,0.228,0,0,0.036,0.032,0,0,0.27,0,0.122,0.024,0,0,0,0.47 +1502,25.875,0.98,1,-0.036,0.492,0.205,0.121,-0.015,0.004,0,0.234,0,0,0.036,0.044,0,0,0.26,0,0.132,0.024,0,0,0,0.454 +1503,25.892,0.98,1,-0.042,0.463,0.198,0.115,-0.015,0,0,0.258,0,0,0.046,0.05,0,0,0.246,0,0.144,0.032,0,0,0,0.438 +1504,25.91,0.98,1,-0.064,0.453,0.202,0.114,-0.017,0,0,0.286,0,0,0.054,0.036,0,0,0.238,0,0.148,0.034,0,0,0,0.378 +1505,25.927,0.98,1,-0.042,0.416,0.23,0.127,-0.022,0,0,0.308,0,0,0.074,0.03,0,0,0.236,0,0.154,0.02,0,0,0,0.318 +1506,25.944,0.98,1,0.008,0.399,0.232,0.126,-0.024,0,0,0.31,0,0,0.068,0.044,0,0,0.242,0,0.172,0.004,0,0,0,0.24 +1507,25.961,0.98,1,-0.009,0.389,0.237,0.125,-0.027,0,0,0.306,0,0,0.054,0.044,0,0,0.238,0,0.202,0,0,0,0,0.166 +1508,25.979,0.98,1,-0.024,0.349,0.247,0.13,-0.033,0.002,0,0.292,0,0,0.028,0.046,0,0,0.224,0,0.208,0,0,0,0,0.092 +1509,25.996,0.98,1,-0.036,0.326,0.254,0.131,-0.038,0.012,0,0.288,0,0,0.012,0.036,0,0,0.212,0,0.228,0,0,0,0,0.034 +1510,26.013,0.98,1,-0.036,0.32,0.258,0.13,-0.041,0.014,0,0.284,0,0,0.006,0.04,0,0,0.176,0,0.232,0,0,0,0,0.004 +1511,26.03,0.98,1,-0.033,0.322,0.252,0.128,-0.042,0.026,0,0.292,0,0,0.004,0.032,0,0,0.16,0,0.25,0,0,0,0,0 +1512,26.048,0.98,1,-0.037,0.314,0.257,0.128,-0.044,0.03,0,0.278,0,0,0,0.026,0,0,0.148,0,0.238,0.006,0,0,0,0 +1513,26.065,0.98,1,-0.051,0.313,0.256,0.128,-0.045,0.03,0,0.262,0,0,0.01,0.022,0,0,0.158,0,0.24,0.012,0,0,0,0 +1514,26.082,0.98,1,-0.046,0.326,0.244,0.121,-0.044,0.022,0,0.25,0,0,0.01,0.02,0,0,0.158,0,0.246,0.012,0,0,0,0 +1515,26.099,0.98,1,-0.041,0.328,0.247,0.121,-0.045,0.012,0,0.256,0,0,0.01,0.024,0,0,0.152,0,0.256,0.004,0,0,0,0 +1516,26.116,0.98,1,-0.038,0.319,0.248,0.121,-0.047,0.028,0,0.262,0,0,0,0.028,0,0,0.178,0.002,0.262,0,0,0,0,0 +1517,26.134,0.98,1,-0.037,0.313,0.248,0.12,-0.047,0.034,0,0.264,0,0,0.01,0.03,0,0,0.186,0.006,0.27,0,0,0,0,0 +1518,26.151,0.98,1,-0.037,0.31,0.245,0.119,-0.047,0.038,0,0.268,0,0,0.01,0.022,0,0,0.2,0.006,0.278,0,0,0,0,0 +1519,26.168,0.98,1,-0.039,0.304,0.244,0.12,-0.047,0.022,0,0.264,0,0,0.01,0.012,0,0,0.182,0.006,0.274,0,0,0,0,0 +1520,26.185,0.98,1,-0.038,0.314,0.243,0.118,-0.046,0.01,0,0.266,0,0,0,0.014,0,0,0.184,0.004,0.272,0,0,0,0,0 +1521,26.203,0.98,1,-0.034,0.303,0.244,0.12,-0.047,0.01,0,0.266,0,0,0,0.02,0,0,0.178,0.01,0.262,0,0,0,0,0 +1522,26.22,0.98,1,-0.031,0.304,0.246,0.122,-0.046,0.01,0,0.272,0,0,0,0.024,0,0,0.176,0.016,0.264,0,0,0,0,0 +1523,26.237,0.98,1,-0.041,0.307,0.239,0.121,-0.045,0.01,0,0.28,0,0,0,0.022,0,0,0.158,0.012,0.256,0,0,0,0,0 +1524,26.254,0.98,1,-0.05,0.298,0.239,0.122,-0.044,0.008,0,0.272,0,0,0,0.018,0,0,0.152,0.008,0.268,0,0,0,0,0 +1525,26.271,0.98,1,-0.046,0.298,0.241,0.121,-0.044,0.008,0,0.268,0,0,0,0.016,0,0,0.164,0,0.268,0.002,0,0,0,0 +1526,26.289,0.98,1,-0.048,0.294,0.239,0.12,-0.043,0.008,0,0.268,0,0,0,0.016,0,0,0.19,0,0.272,0.002,0,0,0,0 +1527,26.306,0.98,1,-0.05,0.292,0.238,0.122,-0.042,0,0,0.27,0,0,0,0.02,0,0,0.202,0,0.26,0.002,0,0,0,0 +1528,26.323,0.98,1,-0.053,0.291,0.236,0.122,-0.041,0.002,0,0.274,0.012,0,0,0.016,0,0,0.2,0.002,0.258,0.002,0,0,0,0 +1529,26.34,0.98,1,-0.048,0.29,0.235,0.124,-0.041,0.008,0,0.266,0.012,0,0,0.012,0,0,0.196,0.002,0.258,0.002,0,0,0,0 +1530,26.358,0.98,1,-0.044,0.286,0.235,0.124,-0.041,0.02,0,0.262,0.012,0,0,0.01,0,0,0.196,0.008,0.264,0.002,0,0,0,0 +1531,26.375,0.98,1,-0.047,0.287,0.237,0.125,-0.041,0.02,0,0.254,0,0,0,0.012,0,0,0.182,0.02,0.272,0,0,0,0,0 +1532,26.392,0.98,1,-0.05,0.287,0.229,0.121,-0.04,0.02,0,0.252,0,0,0,0.012,0,0,0.176,0.032,0.286,0,0,0,0,0 +1533,26.409,0.98,1,-0.05,0.287,0.228,0.121,-0.04,0.008,0,0.24,0,0,0,0.006,0,0,0.174,0.036,0.294,0,0,0,0,0 +1534,26.427,0.98,1,-0.046,0.285,0.229,0.121,-0.04,0.018,0,0.242,0,0,0,0.004,0,0,0.174,0.03,0.288,0,0,0,0,0 +1535,26.444,0.98,1,-0.054,0.289,0.241,0.124,-0.04,0.028,0,0.234,0,0,0,0.002,0,0,0.152,0.018,0.272,0,0,0,0,0 +1536,26.461,0.98,1,-0.05,0.286,0.241,0.126,-0.041,0.038,0,0.228,0,0,0,0.004,0,0,0.142,0.014,0.266,0,0,0,0,0 +1537,26.478,0.98,1,-0.047,0.288,0.24,0.125,-0.041,0.036,0,0.218,0,0,0,0,0,0,0.152,0.02,0.27,0,0,0,0,0 +1538,26.495,0.98,1,-0.05,0.289,0.239,0.126,-0.042,0.034,0,0.218,0,0,0,0,0,0,0.154,0.036,0.268,0,0,0,0,0 +1539,26.513,0.98,1,-0.048,0.281,0.238,0.124,-0.043,0.042,0,0.218,0,0,0,0.004,0,0,0.146,0.036,0.268,0,0,0,0,0 +1540,26.53,0.98,1,-0.045,0.281,0.24,0.125,-0.044,0.05,0,0.216,0,0,0,0.006,0,0,0.128,0.022,0.258,0,0,0,0,0 +1541,26.547,0.98,1,-0.049,0.281,0.241,0.127,-0.046,0.054,0,0.218,0,0,0,0.01,0,0,0.13,0.03,0.266,0,0,0,0,0 +1542,26.564,0.98,1,-0.049,0.29,0.241,0.126,-0.048,0.064,0,0.224,0,0,0,0.006,0,0,0.13,0.04,0.278,0,0,0,0,0 +1543,26.582,0.98,1,-0.047,0.292,0.243,0.127,-0.05,0.072,0,0.222,0,0,0,0.004,0,0,0.134,0.06,0.294,0,0,0,0,0 +1544,26.599,0.98,1,-0.045,0.303,0.237,0.123,-0.05,0.074,0,0.214,0,0,0,0,0,0,0.146,0.038,0.306,0,0,0,0,0 +1545,26.616,0.98,1,-0.037,0.307,0.239,0.122,-0.051,0.062,0,0.214,0,0,0,0.002,0,0,0.152,0.022,0.31,0.004,0,0,0,0 +1546,26.633,0.98,1,-0.043,0.308,0.241,0.122,-0.052,0.058,0,0.22,0,0,0,0.002,0,0,0.144,0.008,0.314,0.004,0,0,0,0 +1547,26.65,0.98,1,-0.042,0.319,0.241,0.122,-0.052,0.048,0,0.23,0,0,0,0.002,0,0,0.13,0.022,0.32,0.004,0,0,0,0 +1548,26.668,0.98,1,-0.041,0.316,0.24,0.123,-0.052,0.046,0,0.238,0,0,0,0.004,0,0,0.13,0.022,0.318,0,0,0,0,0 +1549,26.685,0.98,1,-0.034,0.328,0.241,0.123,-0.054,0.036,0,0.24,0,0,0,0.008,0,0,0.146,0.018,0.324,0,0,0,0,0 +1550,26.702,0.98,1,-0.034,0.323,0.243,0.124,-0.055,0.038,0,0.226,0,0,0,0.012,0,0,0.138,0.01,0.326,0,0,0,0,0 +1551,26.719,0.98,1,-0.036,0.315,0.24,0.123,-0.054,0.038,0,0.22,0,0,0,0.014,0,0,0.13,0.01,0.322,0,0,0,0,0 +1552,26.737,0.98,1,-0.045,0.318,0.243,0.122,-0.055,0.046,0,0.222,0,0,0,0.014,0,0,0.122,0.008,0.314,0,0,0,0,0 +1553,26.754,0.98,1,-0.046,0.308,0.243,0.124,-0.055,0.056,0,0.23,0,0,0,0.02,0,0,0.138,0.004,0.304,0,0,0,0,0 +1554,26.771,0.98,1,-0.044,0.317,0.241,0.122,-0.054,0.052,0,0.24,0,0,0,0.026,0,0,0.152,0.004,0.304,0,0,0,0,0 +1555,26.788,0.98,1,-0.043,0.318,0.239,0.12,-0.054,0.05,0,0.238,0,0,0,0.028,0,0,0.152,0.012,0.314,0,0,0,0,0 +1556,26.806,0.98,1,-0.039,0.327,0.239,0.12,-0.055,0.05,0,0.244,0,0,0,0.022,0,0,0.15,0.008,0.314,0,0,0,0,0 +1557,26.823,0.98,1,-0.044,0.317,0.236,0.119,-0.054,0.04,0,0.232,0,0,0,0.012,0,0,0.148,0.008,0.31,0,0,0,0,0 +1558,26.84,0.98,1,-0.039,0.326,0.239,0.121,-0.056,0.04,0,0.228,0,0,0,0.016,0,0,0.146,0.012,0.298,0,0,0,0,0 +1559,26.857,0.98,1,-0.04,0.322,0.239,0.12,-0.056,0.034,0,0.218,0,0,0,0.014,0,0,0.138,0.012,0.3,0,0,0,0,0 +1560,26.874,0.98,1,-0.05,0.32,0.238,0.119,-0.055,0.038,0,0.224,0,0,0,0.018,0,0,0.134,0.012,0.308,0,0,0,0,0 +1561,26.892,0.98,1,-0.042,0.328,0.236,0.117,-0.057,0.028,0,0.226,0,0,0,0.008,0,0,0.128,0.016,0.31,0,0,0,0,0 +1562,26.909,0.98,1,-0.039,0.319,0.233,0.114,-0.057,0.022,0,0.228,0,0,0,0.014,0,0,0.122,0.03,0.312,0.008,0,0,0,0 +1563,26.926,0.98,1,-0.027,0.328,0.237,0.112,-0.057,0.02,0,0.234,0,0,0,0.012,0,0,0.112,0.038,0.304,0.008,0,0,0,0 +1564,26.943,0.98,1,-0.032,0.326,0.236,0.11,-0.057,0.026,0,0.254,0,0,0,0.016,0,0,0.116,0.024,0.302,0.008,0,0,0,0 +1565,26.961,0.98,1,-0.029,0.319,0.235,0.108,-0.057,0.032,0,0.256,0,0,0,0.016,0,0,0.124,0.02,0.292,0,0,0,0,0 +1566,26.978,0.98,1,-0.025,0.33,0.236,0.107,-0.058,0.036,0,0.254,0,0,0,0.02,0,0,0.128,0.024,0.298,0.002,0,0,0,0 +1567,26.995,0.98,1,-0.036,0.308,0.234,0.105,-0.057,0.032,0,0.246,0,0,0,0.022,0,0,0.12,0.024,0.29,0.002,0,0,0,0 +1568,27.012,0.98,1,-0.031,0.313,0.234,0.101,-0.056,0.024,0,0.256,0,0,0,0.024,0,0,0.118,0.016,0.284,0.002,0,0,0,0 +1569,27.029,0.98,1,-0.027,0.319,0.237,0.102,-0.056,0.028,0,0.256,0,0,0,0.022,0,0,0.11,0,0.27,0,0,0,0,0 +1570,27.047,0.98,1,-0.035,0.31,0.232,0.1,-0.056,0.03,0,0.248,0,0,0,0.02,0,0,0.102,0,0.27,0,0,0,0,0 +1571,27.064,0.98,1,-0.031,0.315,0.233,0.1,-0.055,0.024,0,0.234,0,0,0,0.018,0,0,0.092,0,0.276,0,0,0,0,0 +1572,27.081,0.98,1,-0.034,0.318,0.231,0.101,-0.054,0.012,0,0.224,0,0,0,0.012,0,0,0.078,0.004,0.278,0,0,0,0,0 +1573,27.098,0.98,1,-0.021,0.328,0.233,0.101,-0.055,0.006,0,0.226,0,0,0,0.006,0,0,0.072,0.004,0.282,0,0,0,0,0 +1574,27.116,0.98,1,-0.028,0.324,0.232,0.101,-0.054,0.01,0,0.228,0,0,0,0,0,0,0.064,0.008,0.28,0,0,0,0,0 +1575,27.133,0.98,1,-0.032,0.315,0.229,0.1,-0.052,0.014,0,0.234,0,0,0,0.006,0,0,0.07,0.016,0.276,0,0,0,0,0 +1576,27.15,0.98,1,-0.038,0.315,0.229,0.101,-0.052,0.014,0,0.224,0,0,0,0.02,0,0,0.08,0.038,0.272,0,0,0,0,0 +1577,27.167,0.98,1,-0.038,0.3,0.225,0.098,-0.05,0.008,0,0.218,0,0,0,0.028,0,0,0.084,0.05,0.274,0.002,0,0,0,0 +1578,27.185,0.98,1,-0.035,0.321,0.228,0.1,-0.051,0.004,0,0.208,0,0,0,0.032,0,0,0.092,0.052,0.278,0.012,0,0,0,0 +1579,27.202,0.98,1,-0.04,0.3,0.223,0.097,-0.049,0,0,0.21,0,0,0,0.026,0,0,0.088,0.044,0.276,0.012,0,0,0,0 +1580,27.219,0.98,1,-0.014,0.33,0.231,0.101,-0.052,0,0,0.204,0,0,0,0.016,0,0,0.082,0.046,0.264,0.01,0,0,0,0 +1581,27.236,0.98,1,-0.03,0.318,0.221,0.096,-0.05,0.008,0,0.206,0,0,0,0.01,0,0,0.082,0.048,0.25,0,0,0,0,0 +1582,27.253,0.98,1,-0.041,0.293,0.214,0.092,-0.049,0.008,0,0.218,0,0,0,0.004,0,0,0.084,0.054,0.234,0,0,0,0,0.002 +1583,27.271,0.98,1,-0.039,0.299,0.212,0.091,-0.048,0.014,0,0.23,0,0,0,0.006,0,0,0.084,0.048,0.236,0,0,0,0,0.002 +1584,27.288,0.98,1,-0.03,0.297,0.207,0.089,-0.048,0.006,0,0.238,0,0,0,0,0,0,0.072,0.054,0.234,0,0,0,0,0.002 +1585,27.305,0.98,1,-0.027,0.291,0.207,0.089,-0.046,0.006,0,0.22,0,0,0,0,0,0,0.072,0.056,0.246,0,0,0,0,0 +1586,27.322,0.98,1,-0.035,0.285,0.202,0.088,-0.046,0,0,0.214,0,0,0,0,0,0,0.082,0.07,0.252,0.004,0,0,0,0.002 +1587,27.34,0.98,1,-0.03,0.286,0.2,0.087,-0.046,0,0,0.202,0,0,0,0,0,0,0.09,0.076,0.252,0.006,0,0,0,0.002 +1588,27.357,0.98,1,-0.03,0.286,0.199,0.085,-0.045,0,0,0.202,0,0,0,0,0,0,0.088,0.066,0.242,0.006,0,0,0,0.002 +1589,27.374,0.98,1,-0.033,0.292,0.198,0.087,-0.045,0,0,0.192,0,0,0,0,0,0,0.076,0.056,0.24,0,0,0,0,0 +1590,27.391,0.98,1,-0.032,0.296,0.199,0.087,-0.046,0,0,0.19,0,0,0,0,0,0,0.076,0.046,0.24,0,0,0,0,0 +1591,27.408,0.98,1,-0.027,0.282,0.2,0.085,-0.045,0,0,0.192,0,0,0,0,0,0,0.078,0.054,0.25,0,0,0,0,0 +1592,27.426,0.98,1,-0.013,0.32,0.211,0.088,-0.046,0.002,0,0.196,0,0,0,0,0,0,0.076,0.056,0.242,0,0,0,0,0 +1593,27.443,0.98,1,-0.019,0.326,0.219,0.089,-0.047,0.014,0,0.194,0,0,0,0.002,0,0,0.058,0.062,0.252,0,0,0,0,0 +1594,27.46,0.98,1,-0.014,0.333,0.228,0.089,-0.047,0.024,0,0.212,0,0,0,0.008,0,0,0.054,0.054,0.248,0,0,0,0,0 +1595,27.477,0.98,1,-0.015,0.332,0.237,0.089,-0.047,0.046,0,0.246,0,0,0,0.022,0,0,0.058,0.04,0.266,0,0,0,0,0 +1596,27.495,0.98,1,-0.011,0.338,0.25,0.09,-0.046,0.042,0,0.302,0,0,0,0.034,0,0,0.07,0.018,0.26,0,0,0,0,0 +1597,27.512,0.98,1,-0.008,0.344,0.267,0.092,-0.048,0.05,0,0.332,0.008,0,0.006,0.036,0,0,0.086,0.002,0.268,0,0,0,0,0 +1598,27.529,0.98,1,-0.029,0.329,0.273,0.091,-0.047,0.04,0,0.376,0.008,0,0.006,0.038,0,0,0.108,0.002,0.264,0,0,0,0,0 +1599,27.546,0.98,1,-0.023,0.348,0.292,0.093,-0.047,0.04,0,0.402,0.016,0,0.022,0.028,0,0,0.13,0.002,0.274,0,0,0,0,0 +1600,27.564,0.98,1,-0.029,0.319,0.293,0.092,-0.046,0.028,0,0.426,0.026,0,0.042,0.022,0,0,0.136,0.002,0.276,0,0,0,0,0 +1601,27.581,0.98,1,-0.031,0.325,0.297,0.092,-0.047,0.026,0,0.43,0.05,0,0.042,0.006,0,0,0.172,0,0.282,0,0,0,0,0 +1602,27.598,0.98,1,-0.032,0.332,0.298,0.088,-0.048,0.028,0,0.438,0.068,0,0.054,0.002,0,0,0.192,0,0.274,0,0,0,0,0 +1603,27.615,0.98,1,-0.031,0.344,0.303,0.085,-0.047,0.032,0,0.452,0.074,0,0.046,0,0,0,0.21,0,0.268,0,0,0,0,0 +1604,27.632,0.98,1,-0.018,0.341,0.3,0.081,-0.044,0.04,0,0.454,0.062,0,0.046,0,0,0,0.18,0,0.248,0,0,0,0,0 +1605,27.65,0.98,1,-0.03,0.322,0.289,0.077,-0.041,0.054,0,0.452,0.038,0,0.044,0,0,0,0.17,0,0.24,0,0,0,0,0 +1606,27.667,0.98,1,-0.027,0.324,0.277,0.075,-0.039,0.05,0,0.446,0.012,0,0.024,0,0,0,0.162,0,0.234,0,0,0,0,0 +1607,27.684,0.98,1,-0.037,0.309,0.258,0.075,-0.038,0.03,0,0.42,0.008,0,0.024,0,0,0,0.154,0,0.25,0,0,0,0,0 +1608,27.701,0.98,1,-0.032,0.304,0.244,0.073,-0.036,0.006,0,0.392,0.008,0,0,0,0,0,0.148,0,0.262,0,0,0,0,0 +1609,27.719,0.98,1,-0.033,0.311,0.241,0.075,-0.034,0,0,0.348,0.008,0,0,0,0,0,0.12,0,0.266,0,0,0,0,0 +1610,27.736,0.98,1,-0.032,0.297,0.229,0.073,-0.033,0,0,0.324,0,0,0,0,0,0,0.104,0.004,0.262,0,0,0,0,0 +1611,27.753,0.98,1,-0.031,0.29,0.224,0.075,-0.032,0,0,0.294,0,0,0,0,0,0,0.092,0.02,0.254,0,0,0,0,0 +1612,27.77,0.98,1,-0.038,0.29,0.22,0.075,-0.031,0,0,0.276,0,0,0,0,0,0,0.086,0.036,0.242,0,0,0,0,0 +1613,27.787,0.98,1,-0.037,0.289,0.221,0.077,-0.032,0,0,0.264,0,0,0,0,0,0,0.092,0.054,0.234,0,0,0,0,0 +1614,27.805,0.98,1,-0.04,0.288,0.22,0.079,-0.031,0,0,0.256,0,0,0,0,0,0,0.104,0.048,0.236,0,0,0,0,0.002 +1615,27.822,0.98,1,-0.038,0.295,0.226,0.08,-0.031,0,0,0.26,0,0,0,0.002,0,0,0.108,0.032,0.252,0,0,0,0,0.002 +1616,27.839,0.98,1,-0.035,0.295,0.234,0.082,-0.033,0,0,0.27,0,0,0,0.002,0,0,0.114,0.01,0.258,0,0,0,0,0.002 +1617,27.856,0.98,1,-0.028,0.302,0.247,0.085,-0.034,0.002,0,0.304,0,0,0.002,0.008,0,0,0.1,0,0.264,0,0,0,0,0 +1618,27.874,0.98,1,-0.036,0.313,0.26,0.087,-0.037,0.008,0,0.342,0,0,0.006,0.008,0,0,0.102,0,0.27,0,0,0,0,0 +1619,27.891,0.98,1,-0.027,0.327,0.277,0.091,-0.04,0.028,0,0.374,0.004,0,0.028,0.008,0,0,0.11,0,0.29,0,0,0,0,0 +1620,27.908,0.98,1,-0.034,0.338,0.281,0.094,-0.04,0.056,0,0.404,0.026,0,0.028,0,0,0,0.132,0,0.284,0,0,0,0,0 +1621,27.925,0.98,1,-0.039,0.324,0.281,0.095,-0.039,0.056,0,0.414,0.034,0,0.024,0,0,0,0.154,0,0.278,0,0,0,0,0 +1622,27.943,0.98,1,-0.043,0.323,0.285,0.099,-0.039,0.05,0,0.418,0.04,0,0.004,0,0,0,0.168,0,0.26,0,0,0,0,0 +1623,27.96,0.98,1,-0.045,0.321,0.285,0.1,-0.037,0.036,0,0.408,0.038,0,0.04,0,0,0,0.182,0,0.268,0,0,0,0,0 +1624,27.977,0.98,1,-0.043,0.318,0.281,0.102,-0.037,0.044,0,0.41,0.052,0,0.05,0.004,0,0,0.184,0,0.272,0,0,0,0,0 +1625,27.994,0.98,1,-0.042,0.317,0.278,0.102,-0.035,0.052,0,0.412,0.044,0,0.054,0.01,0,0,0.168,0,0.264,0,0,0,0,0 +1626,28.011,0.98,1,-0.046,0.305,0.269,0.103,-0.033,0.05,0,0.402,0.036,0,0.02,0.01,0,0,0.16,0,0.26,0,0,0,0,0 +1627,28.029,0.98,1,-0.051,0.304,0.262,0.102,-0.03,0.046,0,0.388,0.012,0,0.008,0.004,0,0,0.17,0,0.252,0,0,0,0,0 +1628,28.046,0.98,1,-0.051,0.297,0.253,0.103,-0.03,0.024,0,0.376,0.022,0,0.022,0,0,0,0.168,0,0.25,0,0,0,0,0 +1629,28.063,0.98,1,-0.048,0.302,0.245,0.103,-0.03,0.014,0,0.374,0.028,0,0.028,0,0,0,0.158,0,0.248,0,0,0,0,0 +1630,28.08,0.98,1,-0.05,0.293,0.243,0.104,-0.028,0.008,0,0.364,0.028,0,0.028,0.008,0,0,0.132,0.004,0.248,0,0,0,0,0 +1631,28.098,0.98,1,-0.051,0.298,0.238,0.104,-0.028,0.008,0,0.36,0.032,0,0.006,0.018,0,0,0.116,0.004,0.256,0,0,0,0,0 +1632,28.115,0.98,1,-0.054,0.295,0.232,0.103,-0.026,0.018,0,0.342,0.016,0,0,0.024,0,0,0.102,0.004,0.264,0,0,0,0,0 +1633,28.132,0.98,1,-0.049,0.297,0.233,0.103,-0.026,0.022,0,0.338,0.016,0,0,0.022,0,0,0.104,0.012,0.27,0,0,0,0,0 +1634,28.149,0.98,1,-0.049,0.298,0.233,0.103,-0.026,0.022,0,0.328,0.004,0,0,0.014,0,0,0.114,0.012,0.268,0,0,0,0,0 +1635,28.166,0.98,1,-0.046,0.302,0.237,0.103,-0.027,0.016,0,0.326,0.002,0,0,0.012,0,0,0.11,0.012,0.256,0,0,0,0,0 +1636,28.184,0.98,1,-0.047,0.302,0.239,0.103,-0.028,0.006,0,0.314,0.002,0,0,0.008,0,0,0.09,0,0.256,0,0,0,0,0 +1637,28.201,0.98,1,-0.045,0.31,0.243,0.103,-0.029,0.016,0,0.316,0,0,0,0.004,0,0,0.086,0,0.25,0,0,0,0,0 +1638,28.218,0.98,1,-0.044,0.309,0.246,0.102,-0.03,0.012,0,0.318,0,0,0.01,0.004,0,0,0.086,0,0.246,0,0,0,0,0 +1639,28.235,0.98,1,-0.047,0.307,0.247,0.101,-0.031,0.014,0,0.328,0.002,0,0.01,0.01,0,0,0.094,0,0.238,0,0,0,0,0 +1640,28.253,0.98,1,-0.043,0.309,0.252,0.101,-0.032,0.018,0,0.33,0.002,0,0.01,0.012,0,0,0.094,0,0.236,0,0,0,0,0 +1641,28.27,0.98,1,-0.039,0.31,0.255,0.101,-0.034,0.028,0,0.346,0.002,0,0,0.014,0,0,0.108,0,0.24,0,0,0,0,0 +1642,28.287,0.98,1,-0.04,0.309,0.259,0.101,-0.035,0.044,0,0.364,0,0,0,0.018,0,0,0.132,0.004,0.24,0.002,0,0,0,0 +1643,28.304,0.98,1,-0.046,0.32,0.256,0.102,-0.034,0.042,0,0.382,0,0,0,0.016,0,0,0.148,0.004,0.25,0.002,0,0,0,0 +1644,28.322,0.98,1,-0.039,0.325,0.256,0.102,-0.034,0.04,0,0.382,0,0,0,0.01,0,0,0.152,0.004,0.252,0.002,0,0,0,0 +1645,28.339,0.98,1,-0.041,0.318,0.248,0.1,-0.032,0.022,0,0.38,0.012,0,0,0.008,0,0,0.15,0,0.256,0,0,0,0,0 +1646,28.356,0.98,1,-0.041,0.325,0.251,0.101,-0.031,0.008,0,0.37,0.03,0,0.008,0.014,0,0,0.14,0,0.246,0,0,0,0,0 +1647,28.373,0.98,1,-0.041,0.32,0.247,0.102,-0.03,0,0,0.372,0.03,0,0.008,0.016,0,0,0.132,0,0.244,0,0,0,0,0 +1648,28.39,0.98,1,-0.036,0.329,0.246,0.102,-0.03,0,0,0.37,0.018,0,0.008,0.012,0,0,0.122,0,0.248,0,0,0,0,0 +1649,28.408,0.98,1,-0.046,0.336,0.247,0.102,-0.029,0.004,0,0.37,0,0,0,0.006,0,0,0.13,0,0.252,0,0,0,0,0 +1650,28.425,0.98,1,-0.045,0.334,0.246,0.102,-0.029,0.006,0,0.362,0,0,0,0.002,0,0,0.13,0,0.26,0,0,0,0,0 +1651,28.442,0.98,1,-0.047,0.332,0.246,0.101,-0.029,0.006,0,0.36,0,0,0,0,0,0,0.122,0,0.252,0,0,0,0,0 +1652,28.459,0.98,1,-0.047,0.333,0.245,0.101,-0.029,0,0,0.362,0,0,0,0.002,0,0,0.112,0,0.248,0,0,0,0,0.002 +1653,28.477,0.98,1,-0.047,0.337,0.245,0.1,-0.029,0,0,0.368,0.004,0,0,0.002,0,0,0.11,0,0.248,0,0,0,0,0.002 +1654,28.494,0.98,1,-0.045,0.338,0.249,0.101,-0.029,0,0,0.372,0.004,0,0,0.004,0,0,0.13,0,0.26,0,0,0,0,0.002 +1655,28.511,0.98,1,-0.049,0.339,0.244,0.101,-0.029,0,0,0.366,0.012,0,0,0.004,0,0,0.142,0,0.268,0,0,0,0,0 +1656,28.528,0.98,1,-0.056,0.341,0.244,0.102,-0.029,0.008,0,0.356,0.008,0,0,0.004,0,0,0.136,0,0.264,0,0,0,0,0 +1657,28.545,0.98,1,-0.054,0.34,0.247,0.103,-0.03,0.016,0,0.35,0.008,0,0,0,0,0,0.118,0,0.264,0,0,0,0,0 +1658,28.563,0.98,1,-0.054,0.341,0.248,0.103,-0.03,0.016,0,0.352,0,0,0,0,0,0,0.106,0,0.272,0,0,0,0,0 +1659,28.58,0.98,1,-0.052,0.341,0.249,0.102,-0.031,0.012,0,0.356,0,0,0,0.004,0,0,0.116,0,0.28,0,0,0,0,0 +1660,28.597,0.98,1,-0.054,0.34,0.247,0.101,-0.03,0.008,0,0.356,0,0,0,0.008,0,0,0.124,0,0.278,0,0,0,0,0 +1661,28.614,0.98,1,-0.051,0.333,0.247,0.101,-0.031,0.008,0,0.354,0,0,0,0.01,0,0,0.118,0,0.266,0,0,0,0,0 +1662,28.632,0.98,1,-0.045,0.332,0.251,0.102,-0.031,0.004,0,0.352,0,0,0,0.006,0,0,0.116,0,0.264,0,0,0,0,0 +1663,28.649,0.98,1,-0.048,0.333,0.248,0.101,-0.032,0.002,0,0.354,0,0,0,0.008,0,0,0.106,0,0.264,0,0,0,0,0 +1664,28.666,0.98,1,-0.049,0.329,0.249,0.102,-0.032,0.002,0,0.358,0,0,0,0.01,0,0,0.1,0,0.264,0,0,0,0,0 +1665,28.683,0.98,1,-0.054,0.334,0.25,0.102,-0.031,0.002,0,0.352,0,0,0,0.01,0,0,0.092,0,0.262,0,0,0,0,0 +1666,28.701,0.98,1,-0.049,0.336,0.252,0.102,-0.031,0,0,0.346,0,0,0,0.002,0,0,0.09,0,0.258,0,0,0,0,0 +1667,28.718,0.98,1,-0.048,0.334,0.25,0.102,-0.031,0,0,0.334,0,0,0,0,0,0,0.102,0,0.27,0,0,0,0,0 +1668,28.735,0.98,1,-0.048,0.333,0.251,0.102,-0.031,0.002,0,0.338,0.004,0,0,0,0,0,0.104,0,0.274,0,0,0,0,0 +1669,28.752,0.98,1,-0.045,0.336,0.252,0.101,-0.031,0,0,0.338,0.004,0,0,0.004,0,0,0.114,0,0.274,0,0,0,0,0 +1670,28.769,0.98,1,-0.047,0.338,0.25,0.1,-0.031,0,0,0.336,0.008,0,0,0.01,0,0,0.102,0,0.256,0,0,0,0,0 +1671,28.787,0.98,1,-0.05,0.339,0.25,0.1,-0.03,0,0,0.328,0.004,0,0,0.01,0,0,0.106,0,0.234,0,0,0,0,0 +1672,28.804,0.98,1,-0.049,0.339,0.251,0.1,-0.03,0,0,0.334,0.004,0,0,0.012,0,0,0.108,0,0.234,0,0,0,0,0 +1673,28.821,0.98,1,-0.046,0.334,0.25,0.1,-0.029,0,0,0.338,0,0,0,0.01,0,0,0.128,0,0.248,0,0,0,0,0 +1674,28.838,0.98,1,-0.047,0.341,0.251,0.101,-0.029,0,0,0.346,0,0,0,0.014,0,0,0.14,0,0.254,0,0,0,0,0 +1675,28.856,0.98,1,-0.047,0.339,0.249,0.1,-0.029,0.006,0,0.348,0.004,0,0,0.01,0,0,0.152,0,0.242,0,0,0,0,0 +1676,28.873,0.98,1,-0.044,0.34,0.253,0.099,-0.029,0.006,0,0.346,0.018,0,0,0.01,0,0,0.15,0,0.23,0,0,0,0,0 +1677,28.89,0.98,1,-0.046,0.339,0.254,0.099,-0.028,0.006,0,0.34,0.018,0,0,0.008,0,0,0.158,0,0.238,0,0,0,0,0 +1678,28.907,0.98,1,-0.047,0.345,0.256,0.101,-0.029,0,0,0.332,0.014,0,0,0.004,0,0,0.166,0,0.25,0,0,0,0,0 +1679,28.924,0.98,1,-0.046,0.342,0.256,0.102,-0.029,0,0,0.348,0.004,0,0,0.002,0,0,0.17,0,0.256,0,0,0,0,0 +1680,28.942,0.98,1,-0.046,0.344,0.254,0.101,-0.029,0,0,0.358,0.016,0,0.012,0.004,0,0,0.158,0,0.254,0,0,0,0,0 +1681,28.959,0.98,1,-0.048,0.344,0.254,0.1,-0.029,0,0,0.356,0.028,0,0.024,0.004,0,0,0.146,0,0.25,0,0,0,0,0 +1682,28.976,0.98,1,-0.048,0.345,0.254,0.1,-0.029,0,0,0.344,0.03,0,0.052,0.014,0,0,0.142,0,0.246,0,0,0,0,0 +1683,28.993,0.98,1,-0.048,0.341,0.254,0.099,-0.029,0,0,0.34,0.016,0,0.056,0.012,0,0,0.14,0,0.246,0,0,0,0,0 +1684,29.011,0.98,1,-0.049,0.342,0.254,0.099,-0.028,0,0,0.344,0.004,0,0.044,0.018,0,0,0.138,0,0.254,0,0,0,0,0 +1685,29.028,0.98,1,-0.046,0.341,0.252,0.099,-0.028,0,0,0.34,0,0,0.016,0.01,0,0,0.142,0,0.26,0.004,0,0,0,0 +1686,29.045,0.98,1,-0.032,0.331,0.253,0.101,-0.028,0,0,0.332,0,0,0,0.012,0,0,0.158,0,0.27,0.004,0,0,0,0 +1687,29.062,0.98,1,-0.037,0.328,0.252,0.101,-0.028,0.004,0,0.338,0.004,0,0.004,0.01,0,0,0.166,0,0.278,0.006,0,0,0,0 +1688,29.08,0.98,1,-0.038,0.328,0.252,0.1,-0.028,0.008,0,0.342,0.01,0,0.004,0.01,0,0,0.158,0,0.28,0.002,0,0,0,0 +1689,29.097,0.98,1,-0.039,0.327,0.25,0.1,-0.027,0.012,0,0.352,0.01,0,0.004,0.01,0,0,0.164,0,0.27,0.002,0,0,0,0 +1690,29.114,0.98,1,-0.036,0.322,0.249,0.099,-0.027,0.018,0,0.352,0.006,0,0,0.012,0,0,0.172,0,0.26,0,0,0,0,0 +1691,29.131,0.98,1,-0.033,0.315,0.25,0.099,-0.027,0.018,0,0.35,0.008,0,0,0.014,0,0,0.184,0,0.26,0,0,0,0,0 +1692,29.148,0.98,1,-0.034,0.319,0.251,0.1,-0.028,0.014,0,0.34,0.018,0,0,0.022,0,0,0.176,0,0.258,0,0,0,0,0 +1693,29.166,0.98,1,-0.034,0.317,0.249,0.1,-0.028,0.006,0,0.328,0.024,0,0,0.026,0,0,0.17,0,0.252,0,0,0,0,0 +1694,29.183,0.98,1,-0.032,0.32,0.251,0.1,-0.027,0.004,0,0.324,0.024,0,0,0.028,0,0,0.16,0,0.24,0,0,0,0,0 +1695,29.2,0.98,1,-0.032,0.319,0.25,0.1,-0.027,0.004,0,0.324,0.032,0,0,0.022,0,0,0.164,0,0.228,0,0,0,0,0 +1696,29.217,0.98,1,-0.031,0.32,0.25,0.1,-0.027,0.002,0,0.328,0.026,0,0,0.024,0,0,0.156,0,0.232,0,0,0,0,0 +1697,29.235,0.98,1,-0.031,0.32,0.251,0.1,-0.026,0.002,0,0.334,0.038,0,0,0.022,0,0,0.156,0,0.236,0,0,0,0,0 +1698,29.252,0.98,1,-0.035,0.316,0.25,0.1,-0.027,0,0,0.334,0.05,0,0,0.018,0,0,0.148,0,0.246,0,0,0,0,0 +1699,29.269,0.98,1,-0.034,0.318,0.25,0.1,-0.027,0,0,0.33,0.07,0,0,0.018,0,0,0.146,0,0.244,0,0,0,0,0 +1700,29.286,0.98,1,-0.035,0.32,0.253,0.1,-0.028,0.006,0,0.328,0.082,0,0,0.014,0,0,0.15,0,0.254,0,0,0,0,0 +1701,29.303,0.98,1,-0.037,0.315,0.253,0.1,-0.028,0.006,0,0.334,0.074,0,0,0.014,0,0,0.154,0,0.256,0,0,0,0,0 +1702,29.321,0.98,1,-0.037,0.311,0.249,0.1,-0.027,0.01,0,0.344,0.08,0,0.006,0.01,0,0,0.164,0,0.264,0,0,0,0,0 +1703,29.338,0.98,1,-0.037,0.315,0.25,0.1,-0.028,0.006,0,0.35,0.076,0,0.008,0.008,0,0,0.176,0,0.258,0,0,0,0,0 +1704,29.355,0.98,1,-0.037,0.314,0.248,0.101,-0.027,0.006,0,0.35,0.076,0,0.02,0.008,0,0,0.184,0,0.26,0,0,0,0,0 +1705,29.372,0.98,1,-0.037,0.313,0.249,0.101,-0.027,0.006,0,0.348,0.06,0,0.016,0.006,0,0,0.188,0,0.254,0,0,0,0,0 +1706,29.39,0.98,1,-0.038,0.309,0.249,0.1,-0.027,0.006,0,0.348,0.052,0,0.012,0.008,0,0,0.178,0,0.256,0,0,0,0,0 +1707,29.407,0.98,1,-0.04,0.306,0.25,0.102,-0.028,0.004,0,0.358,0.038,0,0,0.01,0,0,0.166,0,0.25,0,0,0,0,0 +1708,29.424,0.98,1,-0.031,0.295,0.249,0.1,-0.028,0,0,0.362,0.034,0,0,0.016,0,0,0.16,0,0.25,0,0,0,0,0 +1709,29.441,0.98,1,-0.031,0.292,0.247,0.1,-0.028,0,0,0.36,0.04,0,0,0.016,0,0,0.158,0,0.252,0,0,0,0,0 +1710,29.459,0.98,1,-0.029,0.288,0.246,0.1,-0.028,0.002,0,0.356,0.054,0,0,0.016,0,0,0.152,0,0.262,0,0,0,0,0 +1711,29.476,0.98,1,-0.025,0.292,0.247,0.1,-0.029,0.01,0,0.356,0.072,0,0,0.01,0,0,0.15,0,0.274,0,0,0,0,0 +1712,29.493,0.98,1,-0.033,0.287,0.247,0.1,-0.029,0.018,0,0.356,0.074,0,0,0.008,0,0,0.15,0,0.276,0,0,0,0,0 +1713,29.51,0.98,1,-0.031,0.286,0.248,0.099,-0.028,0.018,0,0.35,0.06,0,0,0.008,0,0,0.158,0,0.276,0,0,0,0,0 +1714,29.527,0.98,1,-0.05,0.305,0.251,0.103,-0.03,0.01,0,0.348,0.046,0,0,0.01,0,0,0.16,0,0.256,0,0,0,0,0 +1715,29.545,0.98,1,-0.055,0.308,0.252,0.103,-0.031,0.002,0,0.354,0.024,0,0,0.008,0,0,0.158,0,0.25,0,0,0,0,0 +1716,29.562,0.98,1,-0.057,0.303,0.252,0.101,-0.031,0,0,0.358,0.018,0,0,0.004,0,0,0.144,0,0.244,0,0,0,0,0 +1717,29.579,0.98,1,-0.052,0.298,0.248,0.1,-0.031,0,0,0.362,0.02,0,0,0.002,0,0,0.144,0,0.25,0,0,0,0,0 +1718,29.596,0.98,1,-0.049,0.3,0.246,0.1,-0.031,0,0,0.364,0.032,0,0,0.002,0,0,0.136,0,0.246,0,0,0,0,0 +1719,29.614,0.98,1,-0.047,0.296,0.245,0.099,-0.031,0.002,0,0.358,0.028,0,0,0.002,0,0,0.14,0,0.236,0,0,0,0,0 +1720,29.631,0.98,1,-0.044,0.295,0.245,0.099,-0.031,0.008,0,0.364,0.01,0,0.004,0,0,0,0.14,0,0.242,0,0,0,0,0 +1721,29.648,0.98,1,-0.044,0.306,0.246,0.099,-0.032,0.014,0,0.352,0.006,0,0.004,0,0,0,0.138,0,0.244,0,0,0,0,0 +1722,29.665,0.98,1,-0.044,0.311,0.248,0.1,-0.032,0.014,0,0.35,0.014,0,0.004,0.002,0,0,0.136,0,0.252,0,0,0,0,0 +1723,29.682,0.98,1,-0.051,0.303,0.244,0.098,-0.032,0.016,0,0.346,0.014,0,0,0.002,0,0,0.136,0,0.254,0,0,0,0,0 +1724,29.7,0.98,1,-0.048,0.297,0.244,0.099,-0.032,0.016,0,0.348,0.008,0,0,0.002,0,0,0.134,0,0.258,0,0,0,0,0 +1725,29.717,0.98,1,-0.045,0.296,0.244,0.099,-0.032,0.024,0,0.36,0,0,0,0,0,0,0.13,0.006,0.264,0,0,0,0,0 +1726,29.734,0.98,1,-0.045,0.3,0.242,0.099,-0.031,0.024,0,0.37,0,0,0,0.004,0,0,0.12,0.006,0.256,0,0,0,0,0 +1727,29.751,0.98,1,-0.043,0.293,0.245,0.099,-0.031,0.02,0,0.39,0,0,0,0.008,0,0,0.116,0.006,0.246,0,0,0,0,0 +1728,29.769,0.98,1,-0.036,0.289,0.241,0.098,-0.031,0.03,0,0.396,0,0,0,0.012,0,0,0.118,0,0.248,0,0,0,0,0 +1729,29.786,0.98,1,-0.04,0.289,0.241,0.098,-0.031,0.044,0,0.39,0,0,0,0.014,0,0,0.12,0,0.246,0,0,0,0,0 +1730,29.803,0.98,1,-0.041,0.287,0.241,0.099,-0.031,0.04,0,0.396,0,0,0,0.014,0,0,0.124,0,0.254,0,0,0,0,0 +1731,29.82,0.98,1,-0.043,0.284,0.239,0.098,-0.031,0.036,0,0.394,0,0,0,0.016,0,0,0.122,0,0.242,0,0,0,0,0 +1732,29.838,0.98,1,-0.04,0.279,0.244,0.1,-0.032,0.024,0,0.398,0,0,0,0.01,0,0,0.114,0,0.24,0,0,0,0,0 +1733,29.855,0.98,1,-0.04,0.28,0.243,0.1,-0.032,0.034,0,0.392,0,0,0,0.006,0,0,0.104,0,0.246,0,0,0,0,0 +1734,29.872,0.98,1,-0.043,0.279,0.242,0.101,-0.032,0.022,0,0.39,0,0,0,0,0,0,0.094,0,0.252,0,0,0,0,0 +1735,29.889,0.98,1,-0.043,0.278,0.242,0.099,-0.031,0.016,0,0.384,0,0,0,0,0,0,0.106,0,0.254,0,0,0,0,0 +1736,29.906,0.98,1,-0.042,0.277,0.24,0.099,-0.031,0.006,0,0.372,0,0,0,0,0,0,0.11,0,0.244,0,0,0,0,0 +1737,29.924,0.98,1,-0.04,0.276,0.24,0.099,-0.032,0.012,0,0.374,0,0,0,0,0,0,0.12,0,0.246,0,0,0,0,0 +1738,29.941,0.98,1,-0.04,0.271,0.24,0.099,-0.032,0.024,0,0.38,0.004,0,0,0,0,0,0.13,0,0.256,0,0,0,0,0 +1739,29.958,0.98,1,-0.037,0.273,0.24,0.098,-0.033,0.036,0,0.388,0.006,0,0,0,0,0,0.124,0,0.256,0,0,0,0,0 +1740,29.975,0.98,1,-0.036,0.275,0.24,0.097,-0.033,0.042,0,0.392,0.006,0,0,0,0,0,0.124,0,0.256,0,0,0,0,0 +1741,29.993,0.98,1,-0.035,0.276,0.243,0.096,-0.033,0.042,0,0.398,0.002,0,0,0.002,0,0,0.116,0.002,0.248,0,0,0,0,0 +1742,30.01,0.98,1,-0.032,0.279,0.244,0.097,-0.033,0.048,0,0.404,0,0,0,0.004,0,0,0.124,0.002,0.246,0,0,0,0,0 +1743,30.027,0.98,1,-0.04,0.28,0.242,0.097,-0.034,0.054,0,0.4,0,0,0,0.004,0,0,0.122,0.002,0.238,0,0,0,0,0 +1744,30.044,0.98,1,-0.041,0.281,0.243,0.097,-0.035,0.046,0,0.402,0,0,0,0.006,0,0,0.12,0,0.236,0,0,0,0,0 +1745,30.061,0.98,1,-0.041,0.281,0.242,0.097,-0.035,0.028,0,0.396,0,0,0,0.012,0,0,0.124,0.002,0.242,0,0,0,0,0 +1746,30.079,0.98,1,-0.046,0.283,0.244,0.099,-0.036,0.008,0,0.4,0,0,0,0.02,0,0,0.134,0.002,0.252,0,0,0,0,0 +1747,30.096,0.98,1,-0.048,0.284,0.246,0.099,-0.037,0.006,0,0.4,0,0,0,0.032,0,0,0.14,0.002,0.254,0,0,0,0,0 +1748,30.113,0.98,1,-0.05,0.285,0.247,0.099,-0.037,0.004,0,0.398,0,0,0,0.042,0,0,0.15,0,0.252,0,0,0,0,0 +1749,30.13,0.98,1,-0.047,0.286,0.247,0.098,-0.037,0.004,0,0.4,0,0,0,0.044,0,0,0.144,0.016,0.264,0,0,0,0,0 +1750,30.148,0.98,1,-0.042,0.285,0.246,0.097,-0.036,0,0,0.39,0,0,0,0.04,0,0,0.148,0.018,0.278,0,0,0,0,0 +1751,30.165,0.98,1,-0.042,0.285,0.246,0.097,-0.036,0.002,0,0.39,0.004,0,0,0.032,0,0,0.15,0.022,0.284,0,0,0,0,0 +1752,30.182,0.98,1,-0.042,0.285,0.247,0.097,-0.036,0.01,0,0.392,0.004,0,0,0.036,0,0,0.152,0.008,0.272,0,0,0,0,0 +1753,30.199,0.98,1,-0.042,0.285,0.248,0.098,-0.037,0.014,0,0.394,0.004,0,0,0.034,0,0,0.148,0.008,0.268,0,0,0,0,0 +1754,30.217,0.98,1,-0.039,0.283,0.244,0.099,-0.037,0.02,0,0.394,0,0,0,0.038,0,0,0.138,0.006,0.278,0,0,0,0,0 +1755,30.234,0.98,1,-0.041,0.284,0.243,0.097,-0.036,0.014,0,0.378,0,0,0,0.036,0,0,0.134,0.002,0.284,0,0,0,0,0 +1756,30.251,0.98,1,-0.037,0.282,0.243,0.097,-0.036,0.02,0,0.372,0,0,0,0.032,0,0,0.136,0.002,0.286,0,0,0,0,0 +1757,30.268,0.98,1,-0.037,0.281,0.242,0.097,-0.036,0.018,0,0.366,0,0,0,0.028,0,0,0.134,0,0.278,0,0,0,0,0 +1758,30.285,0.98,1,-0.04,0.281,0.243,0.098,-0.036,0.02,0,0.36,0,0,0,0.022,0,0,0.14,0,0.286,0,0,0,0,0 +1759,30.303,0.98,1,-0.034,0.282,0.242,0.096,-0.035,0.02,0,0.36,0,0,0,0.016,0,0,0.14,0,0.288,0,0,0,0,0 +1760,30.32,0.98,1,-0.029,0.285,0.246,0.096,-0.036,0.028,0,0.362,0,0,0,0.006,0,0,0.132,0,0.282,0,0,0,0,0 +1761,30.337,0.98,1,-0.028,0.285,0.245,0.096,-0.036,0.032,0,0.37,0,0,0,0.006,0,0,0.114,0.004,0.266,0,0,0,0,0 +1762,30.354,0.98,1,-0.027,0.285,0.243,0.099,-0.035,0.024,0,0.374,0,0,0,0.01,0,0,0.098,0.014,0.254,0,0,0,0,0 +1763,30.372,0.98,1,-0.03,0.283,0.244,0.098,-0.035,0.012,0,0.37,0,0,0,0.018,0,0,0.094,0.022,0.252,0,0,0,0,0 +1764,30.389,0.98,1,-0.03,0.286,0.241,0.098,-0.035,0.006,0,0.37,0,0,0,0.016,0,0,0.096,0.036,0.246,0,0,0,0,0 +1765,30.406,0.98,1,-0.027,0.283,0.242,0.097,-0.035,0.014,0,0.368,0,0,0,0.024,0,0,0.1,0.028,0.248,0,0,0,0,0 +1766,30.423,0.98,1,-0.032,0.281,0.243,0.099,-0.036,0.016,0,0.37,0,0,0,0.02,0,0,0.102,0.02,0.248,0,0,0,0,0 +1767,30.44,0.98,1,-0.031,0.282,0.244,0.098,-0.035,0.02,0,0.368,0.002,0,0,0.022,0,0,0.102,0.004,0.25,0,0,0,0,0 +1768,30.458,0.98,1,-0.033,0.284,0.245,0.099,-0.036,0.012,0,0.374,0.002,0,0,0.014,0,0,0.104,0,0.24,0,0,0,0,0 +1769,30.475,0.98,1,-0.033,0.284,0.245,0.099,-0.035,0.01,0,0.384,0.002,0,0,0.01,0,0,0.098,0,0.238,0,0,0,0,0 +1770,30.492,0.98,1,-0.034,0.284,0.245,0.099,-0.035,0.006,0,0.388,0.004,0,0,0.01,0,0,0.098,0.014,0.242,0,0,0,0,0 +1771,30.509,0.98,1,-0.032,0.285,0.245,0.099,-0.035,0.01,0,0.384,0.004,0,0,0.02,0,0,0.1,0.014,0.252,0,0,0,0,0 +1772,30.527,0.98,1,-0.032,0.286,0.247,0.099,-0.035,0.008,0,0.376,0.004,0,0,0.024,0,0,0.104,0.014,0.254,0,0,0,0,0 +1773,30.544,0.98,1,-0.041,0.292,0.246,0.099,-0.034,0.006,0,0.376,0,0,0,0.024,0,0,0.106,0.002,0.25,0,0,0,0,0 +1774,30.561,0.98,1,-0.036,0.3,0.245,0.099,-0.034,0.006,0,0.376,0,0,0,0.022,0,0,0.104,0.002,0.248,0,0,0,0,0 +1775,30.578,0.98,1,-0.033,0.289,0.243,0.1,-0.034,0.006,0,0.392,0,0,0,0.034,0,0,0.104,0.002,0.244,0,0,0,0,0 +1776,30.596,0.98,1,-0.035,0.296,0.244,0.101,-0.034,0.006,0,0.394,0,0,0,0.036,0,0,0.11,0,0.244,0,0,0,0,0 +1777,30.613,0.98,1,-0.034,0.299,0.244,0.101,-0.033,0,0,0.384,0.006,0,0,0.03,0,0,0.106,0,0.238,0,0,0,0,0 +1778,30.63,0.98,1,-0.04,0.297,0.243,0.1,-0.032,0.006,0,0.374,0.006,0,0,0.024,0,0,0.12,0,0.25,0,0,0,0,0 +1779,30.647,0.98,1,-0.04,0.294,0.242,0.1,-0.031,0.006,0,0.368,0.006,0,0,0.02,0,0,0.116,0.006,0.246,0,0,0,0,0 +1780,30.664,0.98,1,-0.04,0.291,0.244,0.101,-0.032,0.01,0,0.37,0.006,0,0,0.026,0,0,0.13,0.008,0.258,0,0,0,0,0 +1781,30.682,0.98,1,-0.041,0.29,0.243,0.1,-0.032,0.01,0,0.372,0.006,0,0,0.032,0,0,0.13,0.008,0.254,0,0,0,0,0 +1782,30.699,0.98,1,-0.04,0.289,0.241,0.1,-0.033,0.014,0,0.376,0.006,0,0,0.032,0,0,0.142,0.006,0.262,0,0,0,0,0 +1783,30.716,0.98,1,-0.033,0.292,0.245,0.1,-0.034,0.022,0,0.38,0.004,0,0,0.022,0,0,0.15,0.014,0.272,0,0,0,0,0 +1784,30.733,0.98,1,-0.036,0.296,0.248,0.099,-0.034,0.016,0,0.384,0.004,0,0,0.01,0,0,0.164,0.016,0.272,0,0,0,0,0 +1785,30.751,0.98,1,-0.034,0.299,0.247,0.099,-0.033,0.01,0,0.384,0.004,0,0,0.002,0,0,0.17,0.02,0.28,0,0,0,0,0 +1786,30.768,0.98,1,-0.036,0.302,0.247,0.099,-0.033,0.008,0,0.374,0,0,0,0.004,0,0,0.164,0.008,0.266,0,0,0,0,0 +1787,30.785,0.98,1,-0.043,0.3,0.246,0.099,-0.032,0.008,0,0.364,0,0,0,0.004,0,0,0.156,0.008,0.264,0,0,0,0,0 +1788,30.802,0.98,1,-0.043,0.303,0.247,0.1,-0.033,0.008,0,0.354,0,0,0,0.008,0,0,0.154,0,0.256,0,0,0,0,0 +1789,30.819,0.98,1,-0.039,0.304,0.251,0.099,-0.033,0.006,0,0.358,0,0,0,0.014,0,0,0.144,0,0.264,0,0,0,0,0 +1790,30.837,0.98,1,-0.041,0.301,0.249,0.1,-0.032,0.006,0,0.35,0,0,0,0.016,0,0,0.128,0,0.262,0.014,0,0,0,0 +1791,30.854,0.98,1,-0.038,0.3,0.252,0.1,-0.033,0.006,0,0.352,0,0,0,0.02,0,0,0.12,0,0.27,0.014,0,0,0,0 +1792,30.871,0.98,1,-0.042,0.305,0.252,0.1,-0.034,0.002,0,0.352,0,0,0,0.022,0,0,0.12,0,0.268,0.032,0,0,0,0 +1793,30.888,0.98,1,-0.041,0.303,0.252,0.1,-0.034,0.008,0,0.35,0,0,0,0.02,0,0,0.132,0,0.268,0.03,0,0,0,0 +1794,30.906,0.98,1,-0.039,0.302,0.252,0.1,-0.035,0.014,0,0.36,0,0,0.004,0.016,0,0,0.138,0,0.268,0.042,0,0,0,0 +1795,30.923,0.98,1,-0.041,0.297,0.25,0.101,-0.035,0.018,0,0.376,0,0,0.004,0.016,0,0,0.15,0,0.264,0.026,0,0,0,0 +1796,30.94,0.98,1,-0.043,0.289,0.251,0.101,-0.034,0.01,0,0.39,0,0,0.004,0.016,0,0,0.152,0,0.268,0.014,0,0,0,0 +1797,30.957,0.98,1,-0.045,0.286,0.246,0.099,-0.034,0.01,0,0.39,0,0,0,0.022,0,0,0.148,0,0.268,0.002,0,0,0,0 +1798,30.975,0.98,1,-0.045,0.28,0.247,0.1,-0.034,0.012,0,0.39,0,0,0,0.024,0,0,0.138,0,0.264,0.002,0,0,0,0 +1799,30.992,0.98,1,-0.045,0.28,0.247,0.099,-0.034,0.012,0,0.38,0,0,0,0.026,0,0,0.128,0,0.266,0,0,0,0,0 +1800,31.009,0.98,1,-0.042,0.276,0.246,0.1,-0.033,0.014,0,0.378,0,0,0,0.024,0,0,0.116,0,0.26,0,0,0,0,0 diff --git a/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p1.csv b/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p1.csv index c6f360d..a6eab88 100644 --- a/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p1.csv +++ b/modules/input_facsfromcsv/openface/default_clean/2people_60fps_p1.csv @@ -1198,3 +1198,605 @@ frame,timestamp,confidence,success,gaze_angle_x,gaze_angle_y,pose_Rx,pose_Ry,pos 1196,20.604,0.98,1,-0.066,0.392,0.151,0.125,0.013,0.098,0,0.086,0,0.134,0.266,0,0,0.08,0.166,0.206,0.07,0.014,0.056,0,0.174,0.352 1197,20.621,0.98,1,-0.059,0.381,0.127,0.11,0.01,0.102,0,0.08,0,0.14,0.254,0,0.018,0.078,0.188,0.198,0.08,0.022,0.058,0,0.17,0.318 1198,20.638,0.98,1,-0.067,0.378,0.121,0.102,0.016,0.102,0,0.096,0,0.158,0.234,0,0.046,0.082,0.232,0.192,0.054,0.038,0.028,0,0.15,0.306 +1199,20.655,0.98,1,-0.067,0.377,0.122,0.112,-0.002,0.104,0,0.096,0,0.168,0.23,0,0.088,0.108,0.26,0.176,0.026,0.054,0.008,0.03,0.178,0.298 +1200,20.673,0.98,1,-0.064,0.381,0.13,0.1,0.019,0.102,0,0.12,0,0.192,0.21,0,0.136,0.132,0.272,0.148,0.012,0.068,0,0.064,0.172,0.332 +1201,20.69,0.98,1,-0.072,0.383,0.133,0.098,0.012,0.092,0,0.122,0,0.206,0.222,0,0.17,0.158,0.288,0.094,0.026,0.064,0,0.106,0.168,0.344 +1202,20.707,0.98,1,-0.066,0.381,0.13,0.096,0.015,0.096,0,0.146,0,0.222,0.222,0,0.19,0.172,0.296,0.084,0.042,0.048,0,0.124,0.13,0.352 +1203,20.724,0.98,1,-0.068,0.381,0.131,0.09,0.022,0.08,0,0.138,0,0.22,0.232,0,0.2,0.19,0.306,0.08,0.054,0.036,0,0.128,0.12,0.352 +1204,20.742,0.98,1,-0.062,0.396,0.112,0.077,0.031,0.062,0,0.142,0,0.216,0.206,0,0.196,0.192,0.302,0.082,0.048,0.042,0,0.118,0.104,0.354 +1205,20.759,0.98,1,-0.082,0.376,0.12,0.077,0.038,0.04,0,0.132,0,0.21,0.184,0,0.176,0.188,0.332,0.06,0.054,0.046,0,0.094,0.094,0.366 +1206,20.776,0.98,1,-0.082,0.383,0.102,0.065,0.046,0.034,0,0.146,0,0.206,0.154,0,0.136,0.18,0.35,0.05,0.07,0.048,0,0.054,0.076,0.374 +1207,20.793,0.98,1,-0.077,0.379,0.085,0.055,0.051,0.022,0,0.138,0,0.196,0.158,0,0.126,0.18,0.366,0.042,0.088,0.038,0,0.036,0.07,0.386 +1208,20.81,0.98,1,-0.064,0.379,0.079,0.049,0.054,0.014,0,0.148,0,0.194,0.16,0,0.132,0.184,0.354,0.03,0.092,0.026,0,0.038,0.09,0.398 +1209,20.828,0.98,1,-0.069,0.374,0.079,0.047,0.058,0,0,0.15,0,0.184,0.184,0,0.156,0.194,0.358,0.014,0.074,0.03,0,0.102,0.152,0.392 +1210,20.845,0.98,1,-0.062,0.37,0.085,0.044,0.06,0,0,0.168,0,0.19,0.204,0,0.176,0.204,0.36,0,0.066,0.048,0,0.16,0.208,0.396 +1211,20.862,0.98,1,-0.062,0.371,0.088,0.045,0.059,0,0,0.178,0,0.196,0.23,0,0.194,0.218,0.36,0,0.058,0.074,0,0.214,0.244,0.394 +1212,20.879,0.98,1,-0.079,0.375,0.095,0.049,0.056,0,0,0.182,0,0.212,0.24,0,0.202,0.23,0.368,0,0.064,0.074,0,0.23,0.228,0.402 +1213,20.897,0.98,1,-0.084,0.383,0.097,0.053,0.054,0,0,0.174,0,0.222,0.236,0,0.206,0.246,0.362,0,0.054,0.068,0,0.226,0.212,0.394 +1214,20.914,0.98,1,-0.081,0.386,0.1,0.055,0.053,0,0,0.172,0,0.228,0.236,0,0.206,0.264,0.37,0,0.046,0.046,0,0.214,0.18,0.402 +1215,20.931,0.98,1,-0.086,0.386,0.101,0.059,0.052,0,0,0.174,0,0.238,0.228,0,0.206,0.28,0.366,0,0.034,0.032,0,0.19,0.142,0.41 +1216,20.948,0.98,1,-0.097,0.387,0.101,0.062,0.051,0.006,0,0.172,0,0.244,0.214,0,0.212,0.29,0.372,0,0.03,0.018,0,0.166,0.112,0.42 +1217,20.966,0.98,1,-0.103,0.39,0.104,0.065,0.048,0.02,0,0.154,0,0.252,0.194,0,0.222,0.296,0.372,0,0.034,0.014,0,0.16,0.106,0.414 +1218,20.983,0.98,1,-0.102,0.391,0.114,0.074,0.044,0.04,0,0.138,0,0.256,0.174,0,0.224,0.296,0.376,0,0.026,0.008,0,0.168,0.108,0.414 +1219,21,0.98,1,-0.097,0.398,0.12,0.078,0.042,0.058,0,0.128,0,0.258,0.17,0,0.226,0.288,0.36,0,0.02,0,0,0.192,0.112,0.428 +1220,21.017,0.98,1,-0.081,0.411,0.123,0.08,0.043,0.07,0,0.132,0,0.258,0.19,0,0.234,0.276,0.364,0,0.014,0.004,0,0.206,0.112,0.452 +1221,21.034,0.98,1,-0.066,0.453,0.126,0.081,0.044,0.094,0,0.12,0,0.246,0.18,0,0.244,0.274,0.352,0,0.006,0.004,0,0.222,0.118,0.484 +1222,21.052,0.98,1,-0.031,0.46,0.136,0.084,0.043,0.116,0,0.102,0,0.23,0.144,0,0.242,0.276,0.37,0,0.006,0.002,0,0.23,0.11,0.522 +1223,21.069,0.98,1,-0.058,0.467,0.147,0.087,0.043,0.128,0,0.084,0,0.216,0.088,0,0.23,0.282,0.372,0,0.004,0,0,0.224,0.106,0.558 +1224,21.086,0.98,1,-0.047,0.47,0.145,0.083,0.046,0.118,0,0.086,0,0.212,0.076,0,0.226,0.28,0.382,0,0.02,0,0,0.206,0.096,0.584 +1225,21.103,0.98,1,-0.088,0.473,0.136,0.076,0.051,0.09,0,0.114,0.004,0.212,0.12,0,0.232,0.282,0.384,0,0.032,0,0,0.18,0.094,0.57 +1226,21.121,0.98,1,-0.083,0.457,0.128,0.07,0.054,0.05,0,0.148,0.018,0.214,0.158,0,0.248,0.274,0.37,0,0.03,0,0,0.182,0.094,0.516 +1227,21.138,0.98,1,-0.044,0.476,0.122,0.063,0.057,0.016,0,0.17,0.018,0.212,0.204,0,0.244,0.272,0.344,0,0.014,0.01,0,0.182,0.106,0.448 +1228,21.155,0.98,1,-0.055,0.427,0.126,0.057,0.059,0.004,0,0.178,0.014,0.202,0.242,0,0.224,0.258,0.324,0,0.01,0.03,0,0.182,0.114,0.388 +1229,21.172,0.98,1,-0.064,0.365,0.149,0.061,0.059,0.002,0,0.172,0,0.19,0.296,0,0.192,0.254,0.314,0,0.032,0.048,0,0.174,0.124,0.368 +1230,21.189,0.98,1,-0.021,0.357,0.138,0.057,0.059,0.002,0,0.164,0,0.184,0.31,0,0.182,0.248,0.312,0,0.052,0.052,0,0.168,0.146,0.352 +1231,21.207,0.98,1,-0.037,0.359,0.124,0.05,0.061,0,0,0.152,0,0.182,0.29,0,0.194,0.252,0.294,0,0.054,0.048,0,0.166,0.158,0.334 +1232,21.224,0.98,1,-0.044,0.358,0.117,0.046,0.063,0,0,0.146,0,0.178,0.286,0,0.202,0.256,0.292,0,0.05,0.054,0,0.148,0.156,0.312 +1233,21.241,0.98,1,-0.041,0.356,0.107,0.042,0.063,0,0,0.154,0,0.166,0.306,0,0.204,0.262,0.296,0,0.038,0.052,0,0.15,0.154,0.314 +1234,21.258,0.98,1,-0.028,0.349,0.1,0.039,0.064,0,0,0.152,0,0.162,0.34,0,0.19,0.26,0.306,0,0.028,0.048,0,0.138,0.164,0.33 +1235,21.276,0.98,1,-0.023,0.342,0.092,0.034,0.064,0,0,0.148,0,0.158,0.342,0,0.176,0.26,0.324,0,0.028,0.046,0,0.162,0.186,0.352 +1236,21.293,0.98,1,-0.023,0.338,0.08,0.03,0.065,0,0,0.14,0,0.158,0.34,0,0.172,0.258,0.332,0,0.024,0.07,0,0.178,0.188,0.356 +1237,21.31,0.98,1,-0.022,0.336,0.07,0.025,0.064,0,0,0.142,0,0.156,0.342,0,0.164,0.262,0.352,0,0.036,0.108,0,0.208,0.208,0.364 +1238,21.327,0.98,1,-0.012,0.329,0.063,0.024,0.063,0,0,0.148,0,0.16,0.356,0,0.174,0.264,0.362,0,0.036,0.128,0,0.224,0.218,0.33 +1239,21.345,0.98,1,-0.034,0.294,0.059,0.024,0.062,0,0,0.154,0,0.166,0.37,0,0.174,0.27,0.366,0,0.034,0.138,0,0.244,0.22,0.296 +1240,21.362,0.98,1,-0.041,0.247,0.057,0.026,0.062,0,0,0.14,0,0.17,0.386,0,0.18,0.274,0.356,0.01,0.028,0.136,0,0.24,0.212,0.25 +1241,21.379,0.98,1,-0.029,0.24,0.047,0.023,0.063,0,0,0.138,0,0.174,0.378,0,0.17,0.278,0.34,0.01,0.022,0.142,0,0.228,0.208,0.236 +1242,21.396,0.98,1,-0.023,0.239,0.043,0.021,0.062,0,0,0.138,0,0.174,0.37,0,0.17,0.284,0.338,0.022,0.036,0.142,0,0.208,0.202,0.238 +1243,21.413,0.98,1,-0.026,0.238,0.043,0.021,0.061,0,0,0.148,0,0.176,0.346,0,0.166,0.292,0.358,0.018,0.054,0.128,0,0.202,0.198,0.234 +1244,21.431,0.98,1,-0.024,0.24,0.047,0.019,0.061,0,0,0.146,0,0.176,0.33,0,0.17,0.3,0.364,0.02,0.068,0.134,0,0.188,0.176,0.22 +1245,21.448,0.98,1,-0.017,0.244,0.054,0.02,0.061,0,0,0.138,0,0.184,0.338,0,0.176,0.304,0.374,0.03,0.064,0.142,0,0.168,0.148,0.194 +1246,21.465,0.98,1,-0.018,0.249,0.067,0.022,0.061,0,0,0.14,0,0.186,0.352,0,0.19,0.298,0.346,0.058,0.062,0.146,0,0.144,0.122,0.176 +1247,21.482,0.98,1,-0.017,0.253,0.078,0.022,0.062,0,0,0.132,0,0.188,0.35,0,0.198,0.296,0.346,0.076,0.052,0.132,0,0.128,0.106,0.164 +1248,21.5,0.98,1,-0.013,0.252,0.09,0.026,0.062,0,0,0.138,0,0.184,0.37,0,0.196,0.296,0.35,0.08,0.064,0.112,0,0.128,0.106,0.15 +1249,21.517,0.98,1,-0.004,0.251,0.098,0.028,0.062,0,0,0.13,0,0.192,0.376,0,0.188,0.302,0.362,0.068,0.062,0.096,0,0.124,0.102,0.138 +1250,21.534,0.98,1,-0.018,0.233,0.109,0.028,0.062,0,0,0.132,0,0.2,0.396,0,0.178,0.304,0.366,0.05,0.072,0.088,0,0.114,0.1,0.134 +1251,21.551,0.98,1,-0.026,0.235,0.115,0.029,0.064,0,0,0.124,0,0.206,0.384,0,0.17,0.3,0.352,0.026,0.07,0.078,0,0.108,0.1,0.128 +1252,21.568,0.98,1,-0.019,0.237,0.12,0.028,0.068,0,0,0.124,0,0.202,0.374,0,0.166,0.294,0.348,0.006,0.068,0.084,0,0.13,0.11,0.106 +1253,21.586,0.98,1,-0.031,0.235,0.129,0.031,0.07,0,0,0.126,0,0.194,0.354,0,0.164,0.286,0.342,0.006,0.07,0.072,0,0.144,0.136,0.066 +1254,21.603,0.98,1,-0.026,0.225,0.138,0.032,0.076,0,0,0.118,0,0.186,0.332,0,0.168,0.284,0.33,0.004,0.068,0.074,0,0.148,0.152,0.052 +1255,21.62,0.98,1,-0.032,0.213,0.143,0.032,0.082,0,0,0.102,0.002,0.184,0.322,0,0.174,0.278,0.304,0,0.062,0.062,0,0.162,0.16,0.048 +1256,21.637,0.98,1,-0.031,0.212,0.149,0.032,0.087,0,0,0.086,0.004,0.186,0.342,0,0.178,0.274,0.284,0,0.054,0.078,0,0.204,0.172,0.056 +1257,21.655,0.98,1,-0.028,0.215,0.158,0.033,0.091,0,0,0.09,0.008,0.182,0.346,0,0.184,0.27,0.276,0,0.052,0.076,0,0.25,0.182,0.046 +1258,21.672,0.98,1,-0.032,0.22,0.16,0.03,0.097,0,0,0.1,0.004,0.172,0.366,0,0.186,0.264,0.286,0,0.054,0.096,0,0.268,0.21,0.04 +1259,21.689,0.98,1,-0.026,0.222,0.161,0.028,0.099,0,0,0.108,0.002,0.166,0.36,0,0.196,0.268,0.288,0,0.038,0.102,0,0.276,0.214,0.038 +1260,21.706,0.98,1,-0.029,0.223,0.16,0.025,0.103,0,0,0.104,0,0.162,0.38,0,0.192,0.274,0.304,0,0.032,0.102,0,0.282,0.232,0.036 +1261,21.723,0.98,1,-0.028,0.223,0.155,0.024,0.106,0,0,0.1,0,0.162,0.39,0,0.184,0.282,0.31,0,0.03,0.09,0,0.272,0.23,0.032 +1262,21.741,0.98,1,-0.028,0.219,0.148,0.022,0.11,0,0,0.09,0,0.162,0.388,0,0.158,0.284,0.32,0,0.044,0.08,0,0.244,0.222,0.036 +1263,21.758,0.98,1,-0.027,0.218,0.141,0.018,0.115,0,0,0.082,0,0.162,0.372,0,0.154,0.282,0.312,0,0.068,0.078,0,0.21,0.208,0.036 +1264,21.775,0.98,1,-0.036,0.216,0.132,0.013,0.121,0,0,0.078,0,0.164,0.35,0,0.16,0.288,0.312,0.008,0.084,0.072,0,0.192,0.184,0.036 +1265,21.792,0.98,1,-0.036,0.213,0.125,0.008,0.126,0,0,0.074,0,0.158,0.338,0,0.176,0.29,0.318,0.014,0.092,0.066,0,0.186,0.166,0.026 +1266,21.81,0.98,1,-0.033,0.214,0.119,0.004,0.129,0,0,0.078,0,0.154,0.312,0,0.182,0.298,0.332,0.014,0.092,0.072,0,0.188,0.154,0.016 +1267,21.827,0.98,1,-0.033,0.221,0.109,-0.001,0.133,0,0,0.086,0,0.15,0.31,0,0.188,0.302,0.354,0.014,0.1,0.062,0,0.176,0.146,0.01 +1268,21.844,0.98,1,-0.035,0.212,0.102,-0.008,0.138,0,0,0.1,0,0.152,0.308,0,0.19,0.316,0.38,0.008,0.12,0.05,0,0.16,0.14,0.002 +1269,21.861,0.98,1,-0.031,0.208,0.093,-0.014,0.143,0,0,0.106,0,0.15,0.322,0,0.188,0.32,0.398,0.016,0.128,0.064,0,0.136,0.136,0.008 +1270,21.879,0.98,1,-0.029,0.206,0.086,-0.018,0.148,0,0,0.112,0,0.142,0.308,0,0.174,0.324,0.396,0.024,0.136,0.052,0,0.134,0.138,0.018 +1271,21.896,0.98,1,-0.027,0.204,0.081,-0.021,0.151,0,0,0.104,0,0.138,0.282,0,0.164,0.316,0.392,0.024,0.136,0.098,0,0.152,0.156,0.026 +1272,21.913,0.98,1,-0.033,0.199,0.078,-0.025,0.155,0,0,0.09,0,0.136,0.238,0,0.16,0.304,0.378,0.016,0.13,0.09,0,0.194,0.188,0.032 +1273,21.93,0.98,1,-0.031,0.209,0.078,-0.027,0.157,0,0,0.08,0,0.132,0.2,0,0.16,0.296,0.384,0,0.098,0.126,0,0.242,0.228,0.02 +1274,21.947,0.98,1,-0.03,0.211,0.079,-0.028,0.16,0,0,0.074,0,0.126,0.174,0,0.148,0.288,0.356,0,0.06,0.106,0,0.274,0.254,0.018 +1275,21.965,0.98,1,-0.025,0.205,0.074,-0.034,0.162,0,0,0.082,0,0.118,0.178,0,0.13,0.282,0.346,0,0.06,0.098,0,0.296,0.248,0.012 +1276,21.982,0.98,1,-0.025,0.207,0.07,-0.038,0.164,0,0,0.086,0,0.12,0.186,0,0.132,0.276,0.334,0,0.07,0.108,0,0.296,0.25,0.03 +1277,21.999,0.98,1,-0.024,0.207,0.067,-0.038,0.164,0,0,0.092,0,0.118,0.192,0,0.142,0.264,0.336,0,0.072,0.114,0,0.292,0.272,0.044 +1278,22.016,0.98,1,-0.03,0.208,0.069,-0.04,0.162,0,0,0.092,0,0.114,0.17,0,0.166,0.252,0.342,0,0.062,0.146,0,0.272,0.306,0.054 +1279,22.034,0.98,1,-0.029,0.203,0.063,-0.043,0.163,0,0,0.098,0,0.104,0.146,0,0.164,0.242,0.326,0.016,0.088,0.13,0,0.236,0.322,0.056 +1280,22.051,0.98,1,-0.024,0.195,0.049,-0.053,0.163,0,0,0.098,0,0.096,0.146,0,0.166,0.242,0.32,0.066,0.178,0.106,0,0.146,0.288,0.034 +1281,22.068,0.98,1,-0.025,0.181,0.033,-0.059,0.162,0,0,0.098,0,0.098,0.148,0,0.15,0.232,0.314,0.112,0.276,0.08,0,0.062,0.278,0.02 +1282,22.085,0.98,1,-0.025,0.178,0.024,-0.056,0.159,0,0,0.098,0,0.096,0.17,0,0.142,0.216,0.326,0.146,0.348,0.078,0,0,0.268,0.006 +1283,22.102,0.98,1,-0.027,0.181,0.026,-0.051,0.156,0,0,0.11,0,0.094,0.168,0,0.144,0.196,0.332,0.148,0.348,0.084,0,0,0.276,0.006 +1284,22.12,0.98,1,-0.027,0.183,0.03,-0.046,0.153,0,0,0.122,0,0.086,0.18,0,0.158,0.176,0.34,0.132,0.3,0.066,0,0.028,0.274,0.018 +1285,22.137,0.98,1,-0.029,0.203,0.047,-0.042,0.149,0,0,0.142,0,0.08,0.152,0,0.19,0.168,0.366,0.102,0.226,0.072,0,0.096,0.264,0.014 +1286,22.154,0.98,1,-0.028,0.206,0.067,-0.037,0.146,0,0,0.152,0,0.078,0.138,0,0.204,0.164,0.388,0.08,0.168,0.05,0,0.188,0.268,0.022 +1287,22.171,0.98,1,-0.034,0.212,0.081,-0.03,0.144,0,0,0.164,0,0.08,0.146,0,0.218,0.166,0.39,0.074,0.124,0.04,0,0.276,0.26,0.02 +1288,22.189,0.98,1,-0.032,0.22,0.094,-0.029,0.143,0,0,0.156,0,0.082,0.168,0,0.224,0.164,0.382,0.08,0.096,0.016,0,0.328,0.274,0.04 +1289,22.206,0.98,1,-0.022,0.22,0.102,-0.031,0.143,0,0,0.156,0,0.076,0.18,0,0.252,0.158,0.376,0.084,0.096,0.032,0,0.354,0.276,0.032 +1290,22.223,0.98,1,0.026,0.211,0.108,-0.035,0.145,0,0,0.144,0,0.052,0.18,0,0.294,0.152,0.378,0.106,0.116,0.042,0,0.348,0.274,0.018 +1291,22.24,0.98,1,0.076,0.187,0.108,-0.04,0.148,0,0,0.132,0,0.03,0.198,0,0.31,0.148,0.358,0.124,0.12,0.028,0,0.32,0.262,0 +1292,22.258,0.98,1,0.112,0.198,0.104,-0.046,0.146,0,0,0.118,0,0.01,0.208,0,0.302,0.15,0.344,0.142,0.142,0.01,0,0.236,0.232,0 +1293,22.275,0.98,1,0.135,0.191,0.098,-0.049,0.142,0,0,0.102,0,0.01,0.208,0,0.272,0.152,0.328,0.142,0.146,0,0,0.162,0.192,0 +1294,22.292,0.98,1,0.134,0.184,0.092,-0.05,0.136,0,0,0.088,0,0.004,0.194,0,0.262,0.152,0.318,0.122,0.17,0,0,0.102,0.138,0 +1295,22.309,0.98,1,0.126,0.19,0.091,-0.05,0.132,0,0,0.078,0,0.006,0.19,0,0.266,0.152,0.318,0.096,0.152,0.002,0,0.112,0.134,0 +1296,22.326,0.98,1,0.124,0.19,0.093,-0.049,0.127,0,0,0.074,0,0.004,0.178,0,0.264,0.154,0.32,0.058,0.144,0.014,0,0.148,0.16,0 +1297,22.344,0.98,1,0.121,0.187,0.1,-0.048,0.122,0,0,0.076,0,0.008,0.188,0,0.258,0.15,0.352,0.042,0.15,0.042,0,0.192,0.214,0 +1298,22.361,0.98,1,0.123,0.18,0.1,-0.046,0.116,0,0,0.076,0,0.006,0.204,0,0.252,0.144,0.364,0.03,0.148,0.072,0,0.228,0.25,0 +1299,22.378,0.98,1,0.117,0.184,0.098,-0.047,0.11,0,0,0.078,0,0.006,0.222,0,0.248,0.14,0.386,0.044,0.144,0.094,0,0.224,0.242,0 +1300,22.395,0.98,1,0.124,0.179,0.093,-0.047,0.106,0,0,0.082,0,0.006,0.212,0,0.254,0.146,0.39,0.054,0.128,0.096,0,0.204,0.214,0 +1301,22.413,0.98,1,0.12,0.184,0.088,-0.048,0.104,0,0,0.088,0,0.012,0.214,0,0.242,0.144,0.384,0.078,0.142,0.086,0,0.146,0.16,0 +1302,22.43,0.98,1,0.118,0.181,0.083,-0.049,0.102,0,0,0.09,0,0.02,0.212,0,0.236,0.15,0.36,0.102,0.16,0.068,0,0.102,0.136,0 +1303,22.447,0.98,1,0.111,0.181,0.086,-0.05,0.101,0,0,0.088,0,0.024,0.21,0,0.232,0.148,0.346,0.126,0.188,0.074,0,0.07,0.114,0 +1304,22.464,0.98,1,0.119,0.179,0.091,-0.051,0.101,0,0,0.092,0.004,0.018,0.196,0,0.238,0.144,0.34,0.128,0.182,0.08,0,0.112,0.122,0 +1305,22.481,0.98,1,0.116,0.186,0.098,-0.051,0.102,0,0,0.098,0.004,0.006,0.186,0,0.252,0.124,0.348,0.114,0.17,0.096,0,0.158,0.14,0 +1306,22.499,0.98,1,0.122,0.185,0.105,-0.056,0.102,0,0,0.11,0.004,0,0.19,0,0.258,0.11,0.336,0.098,0.146,0.11,0,0.196,0.162,0 +1307,22.516,0.98,1,0.125,0.183,0.111,-0.061,0.101,0,0,0.108,0,0,0.19,0,0.256,0.1,0.336,0.096,0.138,0.12,0,0.176,0.164,0 +1308,22.533,0.98,1,0.124,0.184,0.116,-0.065,0.098,0,0,0.106,0.008,0,0.186,0,0.25,0.098,0.334,0.112,0.144,0.124,0,0.162,0.158,0 +1309,22.55,0.98,1,0.134,0.178,0.12,-0.07,0.096,0,0,0.1,0.006,0,0.156,0,0.244,0.098,0.358,0.148,0.152,0.088,0,0.152,0.162,0 +1310,22.568,0.98,1,0.124,0.191,0.13,-0.072,0.093,0.01,0,0.096,0.006,0,0.14,0,0.254,0.102,0.378,0.166,0.166,0.058,0,0.16,0.188,0 +1311,22.585,0.98,1,0.132,0.188,0.136,-0.074,0.092,0.022,0,0.092,0.014,0,0.132,0,0.256,0.104,0.378,0.168,0.154,0.022,0,0.12,0.196,0 +1312,22.602,0.98,1,0.133,0.191,0.145,-0.072,0.091,0.032,0,0.088,0.036,0,0.148,0,0.258,0.096,0.346,0.136,0.156,0.008,0,0.072,0.2,0 +1313,22.619,0.98,1,0.128,0.191,0.157,-0.069,0.091,0.028,0,0.082,0.06,0,0.132,0,0.236,0.086,0.324,0.106,0.148,0,0,0.024,0.198,0 +1314,22.637,0.98,1,0.137,0.198,0.163,-0.068,0.091,0.016,0,0.078,0.074,0,0.116,0,0.226,0.08,0.314,0.09,0.164,0,0,0.008,0.22,0 +1315,22.654,0.98,1,0.138,0.203,0.17,-0.066,0.09,0.014,0,0.068,0.088,0,0.108,0,0.214,0.074,0.308,0.096,0.15,0,0,0.006,0.22,0 +1316,22.671,0.98,1,0.137,0.211,0.181,-0.062,0.089,0.014,0,0.054,0.102,0,0.118,0,0.218,0.07,0.292,0.096,0.136,0,0,0,0.224,0 +1317,22.688,0.98,1,0.132,0.216,0.184,-0.058,0.089,0.018,0,0.046,0.116,0,0.14,0,0.236,0.068,0.276,0.08,0.104,0,0,0.006,0.22,0 +1318,22.705,0.98,1,0.128,0.225,0.193,-0.05,0.09,0.016,0,0.032,0.122,0,0.164,0,0.266,0.08,0.26,0.056,0.102,0.01,0,0.058,0.266,0 +1319,22.723,0.98,1,0.125,0.229,0.201,-0.043,0.09,0.012,0,0.018,0.134,0,0.168,0,0.292,0.09,0.264,0.042,0.11,0.032,0,0.134,0.322,0 +1320,22.74,0.98,1,0.123,0.234,0.217,-0.034,0.09,0.008,0,0.002,0.134,0,0.158,0,0.306,0.106,0.258,0.048,0.118,0.058,0,0.236,0.378,0 +1321,22.757,0.98,1,0.125,0.235,0.222,-0.027,0.089,0.006,0,0,0.116,0,0.136,0,0.312,0.11,0.248,0.052,0.12,0.09,0,0.296,0.406,0 +1322,22.774,0.98,1,0.128,0.233,0.219,-0.025,0.088,0.014,0.004,0,0.11,0,0.16,0,0.312,0.118,0.246,0.054,0.124,0.1,0,0.326,0.396,0 +1323,22.792,0.98,1,0.133,0.222,0.206,-0.023,0.089,0.038,0.018,0,0.088,0,0.142,0,0.3,0.114,0.258,0.064,0.134,0.12,0,0.294,0.36,0 +1324,22.809,0.98,1,0.131,0.217,0.19,-0.024,0.09,0.066,0.038,0,0.098,0,0.144,0,0.272,0.112,0.264,0.078,0.132,0.122,0,0.214,0.296,0 +1325,22.826,0.98,1,0.138,0.223,0.168,-0.024,0.091,0.082,0.048,0,0.088,0,0.13,0,0.24,0.108,0.242,0.104,0.134,0.118,0,0.142,0.234,0 +1326,22.843,0.98,1,0.141,0.223,0.158,-0.022,0.092,0.086,0.044,0,0.116,0,0.14,0,0.208,0.104,0.236,0.132,0.144,0.11,0,0.094,0.192,0 +1327,22.86,0.98,1,0.137,0.209,0.159,-0.02,0.092,0.092,0.036,0,0.126,0,0.136,0,0.194,0.106,0.242,0.144,0.164,0.102,0,0.082,0.178,0 +1328,22.878,0.98,1,0.129,0.202,0.164,-0.015,0.091,0.096,0.036,0,0.148,0,0.122,0,0.188,0.11,0.258,0.136,0.162,0.114,0,0.07,0.178,0 +1329,22.895,0.98,1,0.13,0.21,0.155,-0.012,0.092,0.086,0.026,0,0.156,0,0.114,0,0.188,0.114,0.254,0.116,0.15,0.126,0,0.066,0.182,0 +1330,22.912,0.98,1,0.125,0.21,0.152,-0.009,0.093,0.072,0.03,0,0.152,0,0.118,0,0.176,0.116,0.254,0.112,0.148,0.118,0,0.056,0.176,0 +1331,22.929,0.98,1,0.131,0.21,0.148,-0.007,0.094,0.064,0.034,0,0.142,0,0.12,0,0.172,0.112,0.256,0.112,0.154,0.11,0,0.042,0.162,0 +1332,22.947,0.98,1,0.126,0.21,0.145,-0.004,0.093,0.062,0.034,0,0.118,0,0.144,0,0.166,0.11,0.244,0.108,0.17,0.088,0,0.022,0.144,0 +1333,22.964,0.98,1,0.129,0.209,0.142,-0.004,0.093,0.05,0.018,0,0.112,0,0.17,0,0.166,0.108,0.246,0.098,0.176,0.09,0,0.01,0.124,0 +1334,22.981,0.98,1,0.124,0.221,0.14,0,0.093,0.03,0.002,0,0.106,0,0.182,0,0.156,0.114,0.246,0.104,0.178,0.086,0,0,0.112,0 +1335,22.998,0.98,1,0.119,0.204,0.151,0.004,0.091,0.014,0,0,0.114,0.002,0.192,0,0.142,0.118,0.25,0.1,0.178,0.09,0,0,0.098,0 +1336,23.016,0.98,1,0.11,0.193,0.153,0.007,0.089,0.004,0,0.004,0.108,0.004,0.188,0,0.126,0.116,0.244,0.096,0.168,0.09,0,0,0.092,0 +1337,23.033,0.98,1,0.09,0.193,0.153,0.009,0.088,0,0,0.012,0.1,0.01,0.196,0,0.104,0.11,0.242,0.09,0.166,0.09,0,0,0.086,0 +1338,23.05,0.98,1,0.086,0.193,0.15,0.011,0.087,0,0,0.028,0.084,0.014,0.178,0,0.088,0.114,0.242,0.092,0.156,0.078,0,0,0.078,0 +1339,23.067,0.98,1,0.095,0.197,0.144,0.011,0.085,0,0,0.048,0.094,0.018,0.16,0,0.072,0.114,0.25,0.106,0.154,0.072,0,0,0.072,0 +1340,23.084,0.98,1,0.096,0.185,0.138,0.013,0.083,0,0,0.06,0.094,0.018,0.146,0,0.07,0.116,0.256,0.1,0.13,0.07,0,0,0.064,0 +1341,23.102,0.98,1,0.1,0.182,0.139,0.015,0.08,0,0,0.07,0.094,0.024,0.166,0,0.086,0.11,0.28,0.112,0.118,0.092,0,0.008,0.066,0 +1342,23.119,0.98,1,0.092,0.185,0.14,0.017,0.077,0,0,0.068,0.078,0.02,0.178,0,0.094,0.106,0.308,0.106,0.108,0.106,0,0.028,0.1,0 +1343,23.136,0.98,1,0.1,0.178,0.145,0.02,0.076,0,0,0.07,0.07,0.016,0.182,0,0.1,0.1,0.334,0.122,0.12,0.096,0,0.046,0.126,0 +1344,23.153,0.98,1,0.094,0.178,0.142,0.021,0.073,0,0,0.068,0.07,0.006,0.186,0,0.102,0.09,0.322,0.122,0.134,0.056,0,0.054,0.164,0 +1345,23.171,0.98,1,0.07,0.178,0.153,0.028,0.069,0,0,0.08,0.066,0.008,0.198,0,0.106,0.084,0.298,0.11,0.134,0.02,0,0.052,0.19,0 +1346,23.188,0.98,1,0.032,0.202,0.159,0.03,0.062,0,0,0.094,0.07,0.014,0.21,0,0.124,0.07,0.274,0.078,0.114,0,0,0.074,0.226,0 +1347,23.205,0.98,1,-0.014,0.219,0.161,0.036,0.057,0,0,0.116,0.074,0.014,0.222,0,0.138,0.056,0.28,0.06,0.088,0,0,0.096,0.26,0 +1348,23.222,0.98,1,-0.02,0.222,0.161,0.045,0.054,0,0,0.13,0.076,0.01,0.226,0,0.136,0.036,0.268,0.054,0.084,0,0,0.086,0.264,0 +1349,23.239,0.98,1,-0.034,0.22,0.163,0.059,0.05,0,0,0.132,0.056,0.002,0.238,0,0.094,0.02,0.218,0.08,0.116,0,0,0.046,0.214,0 +1350,23.257,0.98,1,-0.038,0.21,0.153,0.07,0.045,0,0,0.122,0.034,0.006,0.214,0,0.05,0.008,0.168,0.112,0.18,0,0,0.008,0.15,0 +1351,23.274,0.98,1,-0.039,0.21,0.146,0.08,0.04,0.004,0,0.116,0.046,0.018,0.208,0,0.026,0,0.134,0.138,0.222,0,0,0,0.082,0 +1352,23.291,0.98,1,-0.034,0.206,0.155,0.093,0.035,0.004,0,0.114,0.06,0.028,0.172,0,0.032,0,0.146,0.138,0.224,0,0,0,0.096,0 +1353,23.308,0.98,1,-0.033,0.216,0.161,0.103,0.031,0.01,0,0.142,0.078,0.036,0.174,0,0.058,0,0.166,0.128,0.182,0,0,0.016,0.116,0 +1354,23.326,0.98,1,-0.035,0.229,0.18,0.115,0.029,0.024,0,0.152,0.088,0.046,0.168,0,0.094,0,0.194,0.112,0.13,0.008,0,0.072,0.162,0 +1355,23.343,0.98,1,-0.039,0.245,0.201,0.122,0.028,0.032,0,0.172,0.098,0.06,0.19,0,0.12,0,0.236,0.11,0.106,0.008,0,0.146,0.2,0 +1356,23.36,0.98,1,-0.034,0.249,0.219,0.128,0.026,0.052,0,0.16,0.098,0.068,0.198,0,0.126,0,0.266,0.102,0.076,0.028,0,0.236,0.234,0 +1357,23.377,0.98,1,-0.042,0.255,0.231,0.132,0.024,0.046,0,0.156,0.092,0.06,0.208,0,0.14,0,0.29,0.094,0.066,0.048,0,0.284,0.306,0 +1358,23.395,0.98,1,-0.047,0.26,0.248,0.127,0.048,0.066,0,0.152,0.098,0.062,0.218,0,0.162,0,0.292,0.076,0.064,0.074,0,0.318,0.346,0 +1359,23.412,0.98,1,-0.05,0.263,0.261,0.132,0.035,0.07,0,0.15,0.12,0.068,0.232,0,0.184,0.006,0.296,0.066,0.084,0.088,0,0.332,0.376,0 +1360,23.429,0.98,1,-0.051,0.258,0.259,0.138,0.03,0.09,0,0.15,0.102,0.08,0.246,0,0.176,0.008,0.312,0.084,0.098,0.114,0,0.35,0.37,0 +1361,23.446,0.98,1,-0.055,0.258,0.259,0.136,0.046,0.088,0,0.148,0.1,0.09,0.26,0,0.168,0.008,0.318,0.092,0.11,0.128,0,0.38,0.376,0 +1362,23.463,0.98,1,-0.056,0.263,0.271,0.144,0.036,0.078,0,0.15,0.078,0.082,0.262,0,0.17,0.002,0.322,0.102,0.106,0.134,0,0.392,0.37,0 +1363,23.481,0.98,1,-0.054,0.266,0.27,0.14,0.048,0.068,0,0.144,0.098,0.082,0.222,0,0.184,0.006,0.308,0.114,0.096,0.132,0,0.396,0.372,0 +1364,23.498,0.98,1,-0.052,0.264,0.261,0.134,0.057,0.082,0.02,0.13,0.094,0.08,0.198,0,0.192,0.008,0.32,0.136,0.092,0.13,0,0.366,0.352,0 +1365,23.515,0.98,1,-0.053,0.263,0.266,0.136,0.044,0.11,0.044,0.122,0.11,0.09,0.184,0,0.198,0.012,0.316,0.156,0.094,0.122,0,0.332,0.332,0 +1366,23.532,0.98,1,-0.063,0.263,0.273,0.139,0.04,0.13,0.056,0.118,0.124,0.098,0.218,0,0.214,0.006,0.318,0.18,0.094,0.112,0,0.294,0.294,0 +1367,23.55,0.98,1,-0.064,0.266,0.276,0.134,0.056,0.144,0.072,0.134,0.128,0.1,0.254,0,0.224,0.004,0.298,0.202,0.078,0.084,0,0.254,0.27,0 +1368,23.567,0.93,1,-0.066,0.275,0.283,0.143,0.045,0.15,0.084,0.132,0.136,0.094,0.276,0,0.23,0.002,0.292,0.204,0.058,0.076,0,0.214,0.262,0 +1369,23.584,0.98,1,-0.067,0.272,0.274,0.131,0.062,0.176,0.112,0.126,0.128,0.094,0.276,0,0.22,0,0.282,0.184,0.064,0.048,0,0.172,0.254,0 +1370,23.601,0.98,1,-0.067,0.274,0.285,0.138,0.052,0.196,0.132,0.106,0.142,0.088,0.284,0,0.21,0,0.276,0.17,0.068,0.05,0,0.152,0.228,0 +1371,23.618,0.98,1,-0.062,0.281,0.288,0.142,0.05,0.21,0.134,0.114,0.138,0.08,0.264,0,0.182,0,0.266,0.156,0.078,0.054,0,0.12,0.204,0 +1372,23.636,0.98,1,-0.066,0.281,0.271,0.13,0.069,0.216,0.144,0.118,0.142,0.072,0.252,0,0.164,0,0.256,0.142,0.094,0.054,0,0.09,0.18,0 +1373,23.653,0.98,1,-0.067,0.278,0.268,0.13,0.061,0.218,0.138,0.12,0.134,0.072,0.222,0,0.144,0,0.26,0.138,0.1,0.056,0,0.052,0.172,0 +1374,23.67,0.98,1,-0.064,0.281,0.271,0.133,0.058,0.226,0.176,0.12,0.124,0.084,0.248,0,0.142,0,0.278,0.16,0.106,0.056,0,0.024,0.146,0 +1375,23.687,0.98,1,-0.056,0.282,0.271,0.134,0.055,0.23,0.194,0.128,0.124,0.09,0.274,0,0.138,0,0.294,0.182,0.094,0.076,0,0.02,0.128,0 +1376,23.705,0.98,1,-0.057,0.278,0.27,0.132,0.053,0.232,0.216,0.136,0.13,0.09,0.3,0,0.146,0,0.304,0.184,0.092,0.092,0,0.014,0.128,0 +1377,23.722,0.98,1,-0.055,0.278,0.271,0.129,0.055,0.232,0.212,0.13,0.148,0.082,0.324,0,0.146,0,0.298,0.178,0.106,0.086,0,0.022,0.136,0 +1378,23.739,0.98,1,-0.055,0.282,0.276,0.131,0.053,0.234,0.208,0.122,0.152,0.082,0.316,0,0.144,0,0.274,0.174,0.11,0.084,0,0.03,0.15,0 +1379,23.756,0.98,1,-0.059,0.282,0.284,0.13,0.054,0.234,0.196,0.122,0.146,0.08,0.316,0,0.136,0,0.256,0.17,0.118,0.07,0,0.046,0.164,0 +1380,23.774,0.98,1,-0.058,0.286,0.294,0.132,0.055,0.236,0.176,0.13,0.126,0.082,0.3,0,0.134,0,0.254,0.166,0.122,0.068,0,0.05,0.182,0 +1381,23.791,0.98,1,-0.055,0.285,0.3,0.131,0.055,0.236,0.168,0.138,0.13,0.078,0.298,0,0.142,0,0.258,0.16,0.126,0.042,0,0.054,0.194,0 +1382,23.808,0.98,1,-0.056,0.286,0.3,0.133,0.055,0.236,0.166,0.144,0.13,0.076,0.282,0,0.15,0,0.254,0.156,0.122,0.042,0,0.048,0.192,0 +1383,23.825,0.98,1,-0.055,0.288,0.299,0.134,0.055,0.234,0.168,0.146,0.138,0.07,0.262,0,0.138,0,0.232,0.148,0.116,0.03,0,0.038,0.194,0 +1384,23.842,0.98,1,-0.062,0.289,0.296,0.131,0.055,0.24,0.176,0.152,0.142,0.064,0.262,0,0.114,0,0.21,0.136,0.12,0.034,0,0.018,0.186,0 +1385,23.86,0.98,1,-0.059,0.289,0.298,0.133,0.052,0.254,0.186,0.152,0.138,0.05,0.256,0,0.094,0,0.198,0.132,0.136,0.03,0,0.006,0.186,0 +1386,23.877,0.98,1,-0.061,0.283,0.3,0.133,0.047,0.266,0.222,0.156,0.146,0.038,0.266,0,0.084,0,0.184,0.12,0.148,0.02,0,0,0.172,0 +1387,23.894,0.98,1,-0.058,0.286,0.3,0.132,0.045,0.28,0.262,0.158,0.128,0.03,0.27,0,0.08,0,0.172,0.114,0.14,0.01,0,0,0.18,0 +1388,23.911,0.98,1,-0.063,0.292,0.31,0.136,0.041,0.286,0.306,0.16,0.126,0.03,0.286,0,0.064,0,0.168,0.104,0.14,0,0,0,0.184,0 +1389,23.929,0.98,1,-0.059,0.295,0.306,0.138,0.037,0.302,0.334,0.152,0.138,0.04,0.278,0,0.06,0,0.18,0.098,0.144,0,0,0,0.194,0 +1390,23.946,0.98,1,-0.051,0.29,0.303,0.14,0.033,0.304,0.316,0.15,0.17,0.044,0.292,0,0.06,0,0.204,0.092,0.168,0.008,0.018,0,0.198,0 +1391,23.963,0.98,1,-0.052,0.286,0.3,0.132,0.045,0.318,0.31,0.14,0.198,0.05,0.308,0,0.074,0,0.208,0.094,0.176,0.01,0.018,0,0.216,0 +1392,23.98,0.98,1,-0.048,0.289,0.31,0.142,0.034,0.32,0.308,0.144,0.208,0.052,0.322,0,0.086,0,0.2,0.092,0.17,0.01,0.028,0,0.246,0 +1393,23.997,0.98,1,-0.04,0.281,0.305,0.135,0.042,0.344,0.356,0.144,0.188,0.068,0.326,0,0.082,0,0.188,0.096,0.156,0.018,0.008,0,0.262,0 +1394,24.015,0.98,1,-0.046,0.289,0.328,0.147,0.026,0.346,0.38,0.146,0.176,0.068,0.324,0,0.05,0,0.158,0.092,0.142,0.016,0.036,0.008,0.264,0 +1395,24.032,0.98,1,-0.045,0.292,0.317,0.143,0.041,0.36,0.392,0.144,0.162,0.078,0.318,0,0.058,0,0.146,0.096,0.148,0.032,0.052,0.008,0.268,0 +1396,24.049,0.98,1,-0.04,0.28,0.316,0.134,0.034,0.38,0.404,0.134,0.15,0.088,0.308,0,0.06,0,0.138,0.084,0.154,0.016,0.052,0.024,0.274,0 +1397,24.066,0.98,1,-0.043,0.287,0.334,0.148,0.014,0.382,0.422,0.126,0.16,0.096,0.306,0,0.066,0,0.148,0.078,0.154,0.016,0.06,0.028,0.29,0 +1398,24.084,0.98,1,-0.065,0.293,0.313,0.144,0.031,0.378,0.434,0.12,0.168,0.108,0.332,0,0.054,0.006,0.148,0.066,0.14,0,0.052,0.064,0.284,0 +1399,24.101,0.98,1,-0.053,0.287,0.324,0.14,0.02,0.348,0.426,0.12,0.174,0.116,0.346,0,0.05,0.02,0.144,0.068,0.12,0,0.064,0.096,0.296,0 +1400,24.118,0.98,1,-0.052,0.284,0.326,0.142,0.018,0.34,0.388,0.122,0.174,0.136,0.356,0,0.068,0.028,0.144,0.066,0.092,0,0.028,0.142,0.29,0 +1401,24.135,0.98,1,-0.051,0.278,0.325,0.142,0.015,0.326,0.338,0.11,0.156,0.136,0.352,0,0.082,0.032,0.138,0.066,0.074,0,0.014,0.166,0.294,0 +1402,24.153,0.98,1,-0.051,0.281,0.316,0.14,0.014,0.314,0.304,0.104,0.162,0.132,0.348,0,0.106,0.026,0.14,0.056,0.076,0,0,0.182,0.292,0 +1403,24.17,0.98,1,-0.045,0.281,0.305,0.138,0.015,0.282,0.266,0.104,0.164,0.12,0.324,0,0.12,0.032,0.148,0.048,0.082,0,0,0.194,0.29,0 +1404,24.187,0.98,1,-0.05,0.28,0.293,0.134,0.019,0.238,0.226,0.11,0.162,0.112,0.288,0,0.118,0.028,0.16,0.034,0.078,0,0.008,0.212,0.288,0 +1405,24.204,0.98,1,-0.049,0.271,0.27,0.125,0.025,0.19,0.168,0.102,0.148,0.108,0.284,0,0.124,0.04,0.174,0.028,0.072,0,0.008,0.238,0.274,0 +1406,24.221,0.98,1,-0.043,0.268,0.261,0.128,0.011,0.142,0.108,0.094,0.114,0.108,0.286,0,0.126,0.046,0.18,0.026,0.072,0.008,0.008,0.252,0.268,0 +1407,24.239,0.98,1,-0.04,0.26,0.244,0.119,0.021,0.106,0.058,0.074,0.108,0.12,0.312,0,0.146,0.068,0.194,0.022,0.072,0.026,0,0.28,0.272,0 +1408,24.256,0.98,1,-0.025,0.252,0.231,0.123,0.01,0.072,0.014,0.066,0.106,0.118,0.306,0,0.14,0.074,0.21,0.02,0.082,0.04,0,0.286,0.278,0 +1409,24.273,0.98,1,-0.029,0.236,0.203,0.117,0.021,0.042,0,0.06,0.126,0.112,0.308,0,0.128,0.084,0.228,0.01,0.082,0.088,0,0.308,0.278,0 +1410,24.29,0.98,1,-0.031,0.231,0.195,0.117,0.012,0.03,0,0.072,0.124,0.102,0.282,0,0.118,0.086,0.254,0.024,0.092,0.126,0,0.306,0.276,0 +1411,24.308,0.98,1,-0.032,0.222,0.18,0.116,0.009,0.01,0,0.09,0.114,0.102,0.272,0,0.11,0.084,0.264,0.032,0.076,0.17,0,0.306,0.278,0 +1412,24.325,0.98,1,-0.025,0.217,0.168,0.112,0.009,0.008,0,0.1,0.084,0.102,0.25,0,0.11,0.078,0.288,0.058,0.058,0.174,0,0.284,0.28,0 +1413,24.342,0.98,1,-0.037,0.205,0.154,0.113,0.009,0,0,0.114,0.064,0.1,0.242,0,0.11,0.07,0.29,0.052,0.05,0.19,0,0.274,0.272,0 +1414,24.359,0.98,1,-0.035,0.201,0.145,0.112,0.008,0,0,0.108,0.036,0.098,0.212,0,0.12,0.072,0.304,0.06,0.048,0.206,0,0.244,0.264,0 +1415,24.376,0.98,1,-0.042,0.202,0.133,0.112,0.01,0.002,0,0.108,0.016,0.1,0.21,0,0.124,0.072,0.294,0.074,0.04,0.22,0,0.232,0.234,0 +1416,24.394,0.98,1,-0.048,0.198,0.121,0.115,0.013,0.008,0,0.102,0.01,0.094,0.192,0,0.122,0.072,0.284,0.108,0.022,0.222,0,0.19,0.198,0 +1417,24.411,0.98,1,-0.05,0.184,0.109,0.118,0.016,0.008,0,0.104,0.01,0.09,0.206,0,0.108,0.066,0.268,0.15,0.028,0.222,0,0.166,0.172,0 +1418,24.428,0.98,1,-0.046,0.198,0.106,0.112,0.038,0.004,0,0.1,0.01,0.088,0.208,0,0.114,0.06,0.272,0.166,0.032,0.208,0,0.118,0.146,0 +1419,24.445,0.98,1,-0.045,0.197,0.103,0.119,0.028,0,0,0.09,0,0.078,0.218,0,0.096,0.054,0.274,0.18,0.042,0.188,0,0.088,0.14,0 +1420,24.463,0.98,1,-0.052,0.202,0.105,0.115,0.043,0,0,0.076,0,0.082,0.206,0,0.106,0.06,0.278,0.188,0.04,0.158,0,0.044,0.106,0 +1421,24.48,0.98,1,-0.049,0.204,0.102,0.12,0.032,0,0,0.072,0,0.076,0.23,0,0.084,0.06,0.262,0.204,0.04,0.132,0,0.026,0.092,0.002 +1422,24.497,0.98,1,-0.05,0.234,0.145,0.14,0.055,0.004,0,0.068,0.006,0.064,0.212,0,0.068,0.052,0.244,0.196,0.034,0.088,0,0.008,0.08,0.012 +1423,24.514,0.98,1,-0.052,0.225,0.139,0.137,0.064,0.01,0,0.078,0.006,0.038,0.2,0,0.054,0.034,0.21,0.178,0.014,0.046,0,0.01,0.064,0.012 +1424,24.532,0.98,1,-0.052,0.224,0.137,0.14,0.07,0.022,0,0.078,0.006,0.016,0.152,0,0.036,0.018,0.186,0.158,0.014,0.01,0,0.002,0.06,0.01 +1425,24.549,0.98,1,-0.052,0.189,0.135,0.137,0.073,0.02,0,0.066,0.028,0.004,0.178,0,0.032,0.006,0.168,0.154,0.02,0,0,0,0.048,0 +1426,24.566,0.98,1,-0.055,0.188,0.133,0.142,0.075,0.014,0,0.056,0.062,0,0.188,0,0.01,0,0.15,0.148,0.04,0,0,0,0.042,0 +1427,24.583,0.98,1,-0.056,0.184,0.126,0.141,0.079,0.002,0,0.04,0.096,0,0.182,0,0.016,0,0.142,0.14,0.04,0,0,0,0.044,0 +1428,24.6,0.98,1,-0.052,0.178,0.122,0.142,0.08,0,0,0.038,0.098,0,0.152,0,0.022,0,0.13,0.144,0.034,0,0,0.03,0.07,0 +1429,24.618,0.98,1,-0.056,0.168,0.126,0.146,0.079,0,0,0.032,0.074,0,0.136,0,0.038,0,0.132,0.136,0.018,0.008,0,0.098,0.156,0 +1430,24.635,0.98,1,-0.059,0.178,0.136,0.148,0.076,0,0,0.054,0.042,0,0.174,0,0.054,0.004,0.14,0.13,0.008,0.034,0,0.194,0.226,0 +1431,24.652,0.98,1,-0.06,0.187,0.146,0.148,0.075,0,0,0.06,0.016,0,0.188,0,0.06,0.014,0.16,0.134,0.014,0.07,0,0.246,0.266,0 +1432,24.669,0.98,1,-0.058,0.18,0.139,0.146,0.078,0,0,0.064,0.012,0,0.176,0,0.054,0.014,0.18,0.134,0.032,0.104,0,0.244,0.242,0 +1433,24.687,0.98,1,-0.064,0.173,0.132,0.143,0.081,0,0,0.048,0.028,0,0.148,0,0.032,0.008,0.172,0.146,0.054,0.116,0,0.176,0.208,0 +1434,24.704,0.98,1,-0.068,0.17,0.13,0.141,0.084,0,0,0.038,0.048,0,0.166,0,0.018,0,0.14,0.178,0.076,0.12,0,0.096,0.14,0 +1435,24.721,0.98,1,-0.061,0.152,0.099,0.125,0.08,0,0,0.034,0.066,0,0.222,0,0.004,0,0.1,0.214,0.1,0.106,0,0.03,0.086,0 +1436,24.738,0.98,1,-0.061,0.148,0.091,0.126,0.08,0,0,0.026,0.056,0,0.212,0,0.002,0,0.084,0.236,0.14,0.1,0.02,0,0.038,0 +1437,24.755,0.98,1,-0.068,0.163,0.122,0.135,0.094,0,0,0.032,0.05,0,0.228,0,0,0,0.088,0.234,0.162,0.1,0.02,0,0.046,0 +1438,24.773,0.98,1,-0.065,0.15,0.106,0.123,0.089,0,0,0.032,0.06,0,0.174,0,0,0,0.106,0.196,0.15,0.102,0.02,0,0.03,0 +1439,24.79,0.98,1,-0.07,0.158,0.101,0.137,0.065,0,0,0.048,0.058,0,0.174,0,0,0,0.12,0.164,0.11,0.082,0,0,0.046,0 +1440,24.807,0.98,1,-0.075,0.175,0.135,0.153,0.086,0,0,0.05,0.058,0,0.124,0,0,0,0.104,0.144,0.078,0.048,0,0,0.066,0 +1441,24.824,0.98,1,-0.078,0.185,0.148,0.148,0.098,0.014,0,0.044,0.072,0,0.108,0,0,0,0.068,0.16,0.068,0.026,0,0,0.116,0 +1442,24.842,0.98,1,-0.078,0.197,0.149,0.147,0.102,0.02,0,0.026,0.096,0,0.078,0,0,0,0.026,0.16,0.066,0.022,0,0,0.15,0 +1443,24.859,0.98,1,-0.078,0.192,0.149,0.144,0.104,0.02,0,0.02,0.106,0,0.06,0,0,0,0.006,0.14,0.072,0.018,0,0,0.164,0 +1444,24.876,0.98,1,-0.08,0.191,0.15,0.141,0.107,0.01,0,0.016,0.098,0,0.078,0,0,0,0.018,0.134,0.08,0.022,0,0.002,0.178,0 +1445,24.893,0.98,1,-0.079,0.193,0.148,0.143,0.107,0.012,0,0.026,0.096,0,0.1,0,0,0,0.042,0.144,0.11,0.018,0,0.006,0.188,0 +1446,24.911,0.98,1,-0.084,0.19,0.147,0.142,0.108,0.02,0,0.034,0.1,0,0.128,0,0,0,0.064,0.156,0.112,0.022,0,0.026,0.202,0 +1447,24.928,0.98,1,-0.08,0.182,0.144,0.143,0.11,0.016,0,0.052,0.09,0,0.13,0,0,0,0.068,0.16,0.102,0.01,0,0.084,0.224,0 +1448,24.945,0.98,1,-0.081,0.184,0.143,0.144,0.108,0.008,0,0.058,0.074,0,0.144,0,0.006,0,0.102,0.144,0.078,0.02,0,0.168,0.256,0 +1449,24.962,0.98,1,-0.081,0.184,0.148,0.148,0.103,0,0,0.068,0.064,0,0.126,0,0.022,0,0.134,0.116,0.052,0.054,0,0.29,0.294,0 +1450,24.979,0.98,1,-0.087,0.185,0.156,0.151,0.1,0,0,0.056,0.074,0,0.116,0,0.048,0,0.184,0.082,0.036,0.112,0,0.382,0.32,0 +1451,24.997,0.98,1,-0.087,0.188,0.154,0.15,0.096,0,0,0.04,0.094,0,0.118,0,0.046,0,0.206,0.052,0.022,0.154,0,0.458,0.348,0 +1452,25.014,0.98,1,-0.089,0.188,0.156,0.148,0.097,0,0,0.024,0.1,0.002,0.148,0,0.04,0.002,0.224,0.026,0.018,0.176,0,0.494,0.366,0 +1453,25.031,0.98,1,-0.084,0.188,0.156,0.147,0.097,0,0,0.024,0.086,0.012,0.174,0,0.04,0.014,0.232,0.01,0.012,0.16,0,0.518,0.39,0 +1454,25.048,0.98,1,-0.077,0.19,0.159,0.147,0.097,0,0,0.022,0.08,0.02,0.198,0,0.066,0.022,0.236,0,0.002,0.16,0,0.528,0.4,0 +1455,25.066,0.98,1,-0.082,0.189,0.162,0.145,0.1,0,0,0.016,0.082,0.018,0.198,0,0.074,0.02,0.234,0.002,0,0.146,0,0.512,0.408,0 +1456,25.083,0.98,1,-0.08,0.189,0.157,0.141,0.104,0.002,0,0.012,0.074,0.008,0.198,0,0.064,0.012,0.216,0.006,0.01,0.154,0,0.472,0.394,0 +1457,25.1,0.98,1,-0.078,0.187,0.154,0.134,0.107,0.006,0,0.01,0.076,0,0.206,0,0.058,0.006,0.194,0.022,0.018,0.164,0,0.412,0.38,0 +1458,25.117,0.98,1,-0.087,0.193,0.157,0.131,0.108,0.018,0,0.006,0.076,0,0.214,0,0.062,0.014,0.188,0.042,0.036,0.16,0,0.362,0.362,0 +1459,25.134,0.98,1,-0.086,0.19,0.164,0.131,0.109,0.036,0,0.008,0.1,0.01,0.214,0,0.068,0.01,0.208,0.066,0.04,0.136,0,0.316,0.332,0 +1460,25.152,0.98,1,-0.088,0.193,0.16,0.132,0.073,0.058,0,0.016,0.104,0.014,0.16,0,0.068,0.014,0.23,0.09,0.058,0.088,0,0.262,0.296,0 +1461,25.169,0.98,1,-0.097,0.208,0.182,0.145,0.093,0.068,0,0.032,0.106,0.02,0.116,0,0.076,0.01,0.246,0.128,0.05,0.064,0,0.22,0.276,0 +1462,25.186,0.98,1,-0.1,0.205,0.179,0.143,0.098,0.078,0,0.024,0.102,0.014,0.09,0,0.1,0.022,0.248,0.148,0.048,0.052,0,0.204,0.27,0 +1463,25.203,0.98,1,-0.101,0.198,0.182,0.14,0.097,0.076,0,0.034,0.106,0.02,0.094,0,0.126,0.024,0.256,0.152,0.046,0.07,0,0.22,0.288,0 +1464,25.221,0.98,1,-0.089,0.193,0.183,0.137,0.098,0.086,0,0.034,0.136,0.024,0.098,0,0.14,0.028,0.264,0.124,0.058,0.088,0,0.232,0.302,0 +1465,25.238,0.98,1,-0.091,0.191,0.186,0.133,0.096,0.086,0,0.052,0.148,0.03,0.086,0,0.138,0.028,0.26,0.11,0.074,0.114,0,0.256,0.332,0 +1466,25.255,0.98,1,-0.091,0.186,0.19,0.133,0.093,0.084,0,0.052,0.146,0.032,0.07,0,0.136,0.032,0.258,0.092,0.078,0.134,0,0.278,0.328,0 +1467,25.272,0.98,1,-0.088,0.186,0.193,0.133,0.09,0.068,0,0.05,0.144,0.036,0.084,0,0.138,0.034,0.254,0.1,0.084,0.146,0,0.284,0.308,0 +1468,25.29,0.98,1,-0.086,0.181,0.186,0.128,0.09,0.06,0,0.032,0.136,0.044,0.092,0,0.144,0.038,0.274,0.104,0.08,0.154,0,0.288,0.278,0 +1469,25.307,0.98,1,-0.087,0.174,0.182,0.125,0.059,0.068,0.008,0.028,0.14,0.048,0.116,0,0.138,0.036,0.27,0.106,0.08,0.16,0,0.264,0.254,0 +1470,25.324,0.98,1,-0.084,0.187,0.193,0.139,0.076,0.078,0.008,0.014,0.124,0.044,0.104,0,0.134,0.036,0.27,0.088,0.072,0.152,0,0.252,0.238,0 +1471,25.341,0.98,1,-0.082,0.168,0.16,0.11,0.08,0.078,0.008,0.02,0.126,0.046,0.078,0,0.14,0.038,0.26,0.082,0.064,0.146,0,0.224,0.212,0 +1472,25.358,0.98,1,-0.078,0.171,0.166,0.12,0.058,0.068,0.016,0.012,0.134,0.054,0.044,0,0.146,0.046,0.28,0.08,0.078,0.124,0,0.21,0.18,0 +1473,25.376,0.98,1,-0.072,0.172,0.165,0.121,0.048,0.06,0.016,0.012,0.152,0.056,0.024,0,0.158,0.048,0.284,0.084,0.082,0.114,0,0.196,0.164,0 +1474,25.393,0.98,1,-0.073,0.162,0.155,0.114,0.064,0.068,0.016,0.008,0.148,0.062,0.042,0,0.16,0.046,0.278,0.086,0.09,0.114,0,0.192,0.156,0 +1475,25.41,0.98,1,-0.062,0.182,0.167,0.121,0.046,0.064,0,0.006,0.144,0.06,0.052,0,0.176,0.046,0.266,0.084,0.082,0.116,0,0.194,0.194,0 +1476,25.427,0.98,1,-0.079,0.165,0.155,0.116,0.06,0.074,0.01,0.026,0.128,0.066,0.07,0,0.17,0.044,0.266,0.084,0.08,0.118,0,0.218,0.214,0 +1477,25.445,0.98,1,-0.057,0.182,0.164,0.122,0.04,0.072,0.01,0.042,0.132,0.062,0.1,0,0.142,0.04,0.264,0.074,0.09,0.122,0,0.224,0.236,0 +1478,25.462,0.98,1,-0.078,0.175,0.174,0.134,0.063,0.068,0.01,0.046,0.144,0.046,0.106,0,0.12,0.036,0.262,0.072,0.092,0.134,0,0.228,0.25,0 +1479,25.479,0.98,1,-0.076,0.158,0.144,0.112,0.064,0.064,0,0.04,0.15,0.04,0.102,0,0.114,0.034,0.254,0.074,0.086,0.148,0,0.23,0.258,0 +1480,25.496,0.98,1,-0.061,0.173,0.154,0.12,0.039,0.054,0,0.04,0.164,0.03,0.1,0,0.106,0.03,0.244,0.078,0.072,0.156,0,0.234,0.26,0 +1481,25.513,0.98,1,-0.077,0.172,0.164,0.136,0.059,0.054,0,0.046,0.162,0.034,0.092,0,0.092,0.026,0.23,0.066,0.07,0.156,0,0.24,0.25,0 +1482,25.531,0.98,1,-0.076,0.17,0.159,0.13,0.067,0.046,0,0.048,0.164,0.024,0.1,0,0.086,0.022,0.236,0.058,0.08,0.162,0,0.232,0.248,0 +1483,25.548,0.98,1,-0.069,0.158,0.13,0.111,0.059,0.044,0,0.044,0.146,0.022,0.076,0,0.094,0.022,0.264,0.06,0.096,0.15,0,0.258,0.248,0 +1484,25.565,0.98,1,-0.059,0.167,0.132,0.119,0.033,0.036,0,0.064,0.134,0.024,0.1,0,0.088,0.018,0.274,0.066,0.092,0.158,0,0.272,0.248,0 +1485,25.582,0.98,1,-0.066,0.168,0.143,0.134,0.056,0.02,0,0.076,0.136,0.026,0.084,0,0.078,0.022,0.27,0.064,0.092,0.164,0,0.278,0.25,0 +1486,25.6,0.98,1,-0.066,0.168,0.137,0.128,0.063,0.01,0,0.072,0.16,0.026,0.112,0,0.07,0.02,0.238,0.066,0.084,0.178,0,0.264,0.258,0 +1487,25.617,0.98,1,-0.068,0.166,0.128,0.127,0.068,0.006,0,0.05,0.188,0.024,0.122,0,0.072,0.02,0.234,0.062,0.088,0.19,0,0.246,0.25,0 +1488,25.634,0.98,1,-0.07,0.162,0.12,0.126,0.074,0.016,0,0.028,0.184,0.024,0.124,0,0.066,0.014,0.222,0.076,0.09,0.222,0,0.22,0.214,0 +1489,25.651,0.98,1,-0.067,0.15,0.11,0.129,0.077,0.018,0,0.014,0.162,0.028,0.098,0,0.054,0.012,0.232,0.1,0.094,0.23,0,0.164,0.18,0 +1490,25.669,0.98,1,-0.069,0.15,0.105,0.129,0.08,0.03,0,0.01,0.136,0.028,0.07,0,0.048,0.018,0.238,0.124,0.078,0.212,0,0.11,0.142,0 +1491,25.686,0.98,1,-0.073,0.147,0.101,0.13,0.082,0.032,0,0.008,0.152,0.02,0.09,0,0.042,0.018,0.256,0.146,0.062,0.16,0,0.066,0.116,0 +1492,25.703,0.98,1,-0.07,0.143,0.098,0.133,0.084,0.048,0,0.01,0.178,0.012,0.078,0,0.046,0.014,0.25,0.16,0.058,0.128,0,0.048,0.078,0 +1493,25.72,0.98,1,-0.071,0.144,0.1,0.141,0.085,0.064,0,0.012,0.196,0,0.058,0,0.034,0.006,0.234,0.176,0.072,0.112,0,0.066,0.062,0 +1494,25.737,0.98,1,-0.072,0.147,0.101,0.143,0.087,0.076,0,0.014,0.216,0.002,0.04,0,0.032,0,0.208,0.17,0.078,0.096,0,0.076,0.066,0 +1495,25.755,0.98,1,-0.07,0.149,0.102,0.145,0.088,0.086,0,0.022,0.228,0.002,0.052,0,0.04,0.002,0.188,0.142,0.068,0.09,0,0.096,0.082,0 +1496,25.772,0.98,1,-0.068,0.153,0.105,0.149,0.086,0.082,0,0.014,0.236,0.002,0.072,0,0.046,0.002,0.176,0.132,0.048,0.08,0,0.1,0.076,0 +1497,25.789,0.98,1,-0.066,0.15,0.109,0.151,0.086,0.092,0,0.01,0.238,0,0.09,0,0.044,0.002,0.184,0.124,0.028,0.084,0,0.112,0.066,0 +1498,25.806,0.98,1,-0.071,0.146,0.107,0.15,0.086,0.106,0,0.002,0.23,0,0.07,0,0.04,0.002,0.192,0.126,0.018,0.076,0,0.122,0.06,0 +1499,25.824,0.98,1,-0.073,0.146,0.106,0.151,0.086,0.114,0.024,0.008,0.228,0,0.074,0,0.048,0.002,0.202,0.136,0.014,0.064,0,0.142,0.066,0 +1500,25.841,0.98,1,-0.071,0.136,0.103,0.158,0.088,0.126,0.042,0.008,0.212,0,0.064,0,0.058,0,0.206,0.14,0.022,0.046,0,0.174,0.064,0 +1501,25.858,0.98,1,-0.07,0.135,0.097,0.157,0.089,0.114,0.046,0.018,0.206,0,0.066,0,0.06,0,0.214,0.148,0.014,0.048,0,0.194,0.052,0 +1502,25.875,0.98,1,-0.067,0.134,0.096,0.153,0.089,0.118,0.044,0.014,0.21,0,0.056,0,0.056,0,0.214,0.144,0.014,0.06,0,0.198,0.052,0 +1503,25.892,0.98,1,-0.068,0.131,0.096,0.153,0.09,0.114,0.026,0.032,0.222,0,0.062,0,0.054,0,0.216,0.142,0.01,0.062,0,0.206,0.082,0 +1504,25.91,0.98,1,-0.07,0.132,0.098,0.152,0.089,0.112,0.022,0.024,0.232,0,0.098,0,0.05,0,0.21,0.134,0.01,0.074,0,0.234,0.136,0 +1505,25.927,0.98,1,-0.072,0.138,0.103,0.154,0.086,0.102,0,0.024,0.222,0,0.132,0,0.066,0,0.2,0.134,0.016,0.09,0,0.286,0.192,0 +1506,25.944,0.98,1,-0.078,0.141,0.108,0.158,0.084,0.092,0,0.014,0.198,0,0.138,0,0.084,0,0.212,0.138,0.02,0.116,0,0.334,0.238,0 +1507,25.961,0.98,1,-0.074,0.143,0.112,0.157,0.083,0.088,0,0.018,0.174,0.004,0.13,0,0.104,0.006,0.212,0.156,0.022,0.13,0,0.356,0.256,0 +1508,25.979,0.98,1,-0.073,0.145,0.114,0.156,0.084,0.08,0,0.014,0.182,0.004,0.108,0,0.094,0.012,0.226,0.17,0.02,0.132,0,0.34,0.248,0 +1509,25.996,0.98,1,-0.074,0.141,0.113,0.156,0.084,0.072,0,0.006,0.21,0.004,0.116,0,0.066,0.018,0.204,0.176,0.02,0.13,0,0.292,0.216,0 +1510,26.013,0.98,1,-0.076,0.145,0.112,0.156,0.086,0.066,0,0,0.218,0,0.136,0,0.032,0.014,0.196,0.168,0.032,0.116,0,0.222,0.176,0 +1511,26.03,0.98,1,-0.077,0.14,0.112,0.155,0.087,0.066,0,0,0.22,0,0.174,0,0.012,0.012,0.172,0.162,0.06,0.12,0,0.15,0.156,0 +1512,26.048,0.98,1,-0.077,0.142,0.113,0.152,0.088,0.07,0,0,0.204,0,0.154,0,0,0.01,0.16,0.17,0.086,0.136,0,0.092,0.15,0 +1513,26.065,0.98,1,-0.076,0.147,0.116,0.148,0.088,0.078,0,0,0.204,0,0.142,0,0,0.008,0.136,0.182,0.12,0.134,0.002,0.046,0.148,0 +1514,26.082,0.98,1,-0.079,0.146,0.113,0.147,0.089,0.08,0,0,0.206,0,0.118,0,0,0.004,0.138,0.174,0.138,0.13,0.012,0.016,0.128,0 +1515,26.099,0.98,1,-0.073,0.145,0.109,0.142,0.092,0.076,0,0,0.208,0,0.14,0,0,0,0.124,0.176,0.14,0.108,0.022,0.004,0.102,0 +1516,26.116,0.98,1,-0.068,0.144,0.108,0.138,0.093,0.074,0,0,0.204,0,0.122,0,0,0,0.122,0.178,0.122,0.112,0.028,0,0.084,0 +1517,26.134,0.98,1,-0.07,0.142,0.108,0.136,0.095,0.068,0,0.002,0.186,0,0.108,0,0,0,0.104,0.192,0.094,0.098,0.018,0,0.072,0 +1518,26.151,0.98,1,-0.067,0.138,0.107,0.133,0.097,0.07,0,0.004,0.184,0,0.094,0,0,0,0.1,0.192,0.092,0.09,0.008,0,0.076,0 +1519,26.168,0.98,1,-0.068,0.137,0.106,0.13,0.1,0.058,0,0.006,0.176,0,0.08,0,0,0,0.078,0.196,0.076,0.082,0,0,0.066,0 +1520,26.185,0.98,1,-0.06,0.148,0.111,0.128,0.102,0.062,0,0.02,0.152,0,0.086,0,0,0,0.066,0.182,0.072,0.072,0,0,0.072,0 +1521,26.203,0.98,1,-0.048,0.187,0.127,0.131,0.102,0.054,0,0.032,0.106,0,0.1,0,0,0,0.068,0.176,0.054,0.072,0,0,0.08,0 +1522,26.22,0.98,1,-0.038,0.186,0.121,0.117,0.094,0.062,0,0.06,0.096,0,0.14,0,0,0,0.076,0.148,0.062,0.072,0,0,0.11,0.01 +1523,26.237,0.98,1,-0.035,0.201,0.145,0.129,0.101,0.052,0,0.062,0.084,0,0.16,0,0.002,0,0.082,0.146,0.054,0.088,0,0,0.124,0.01 +1524,26.254,0.98,1,-0.047,0.201,0.14,0.114,0.096,0.044,0,0.08,0.092,0,0.158,0,0.026,0,0.102,0.13,0.054,0.106,0,0.01,0.122,0.01 +1525,26.271,0.98,1,-0.051,0.211,0.15,0.119,0.077,0.044,0,0.078,0.064,0,0.158,0,0.044,0,0.124,0.136,0.058,0.108,0,0.01,0.124,0 +1526,26.289,0.98,1,-0.047,0.208,0.152,0.113,0.09,0.068,0,0.096,0.068,0,0.166,0,0.074,0,0.158,0.118,0.064,0.102,0,0.02,0.124,0 +1527,26.306,0.98,1,-0.052,0.213,0.169,0.118,0.075,0.08,0,0.094,0.082,0,0.172,0,0.082,0,0.136,0.102,0.074,0.08,0,0.034,0.152,0 +1528,26.323,0.98,1,-0.048,0.217,0.171,0.11,0.09,0.094,0,0.096,0.116,0,0.184,0,0.092,0,0.146,0.094,0.078,0.076,0,0.058,0.15,0 +1529,26.34,0.98,1,-0.056,0.232,0.186,0.117,0.077,0.09,0,0.094,0.122,0.008,0.168,0,0.09,0,0.132,0.104,0.086,0.08,0,0.072,0.146,0 +1530,26.358,0.98,1,-0.058,0.237,0.193,0.115,0.073,0.1,0,0.098,0.11,0.012,0.146,0,0.086,0,0.16,0.108,0.098,0.082,0,0.082,0.144,0 +1531,26.375,0.98,1,-0.055,0.239,0.198,0.111,0.072,0.092,0,0.1,0.098,0.016,0.12,0,0.084,0,0.18,0.098,0.096,0.078,0,0.096,0.152,0 +1532,26.392,0.98,1,-0.064,0.233,0.198,0.109,0.072,0.094,0,0.1,0.11,0.02,0.122,0,0.084,0,0.204,0.096,0.096,0.064,0,0.112,0.174,0 +1533,26.409,0.98,1,-0.063,0.235,0.199,0.111,0.07,0.088,0,0.108,0.118,0.034,0.168,0,0.092,0,0.226,0.09,0.094,0.072,0,0.128,0.182,0 +1534,26.427,0.98,1,-0.068,0.241,0.202,0.111,0.069,0.088,0,0.122,0.112,0.052,0.202,0,0.1,0,0.232,0.088,0.1,0.082,0,0.154,0.194,0 +1535,26.444,0.98,1,-0.056,0.236,0.204,0.106,0.068,0.076,0,0.124,0.1,0.062,0.238,0,0.106,0,0.23,0.068,0.106,0.092,0,0.176,0.208,0 +1536,26.461,0.98,1,-0.046,0.238,0.21,0.105,0.067,0.064,0,0.134,0.088,0.064,0.25,0,0.108,0.004,0.216,0.06,0.1,0.092,0,0.22,0.206,0 +1537,26.478,0.98,1,-0.041,0.244,0.213,0.103,0.064,0.058,0,0.136,0.078,0.064,0.276,0,0.12,0.018,0.214,0.05,0.094,0.114,0,0.252,0.22,0 +1538,26.495,0.98,1,-0.038,0.246,0.216,0.101,0.062,0.034,0,0.142,0.078,0.066,0.284,0,0.142,0.04,0.216,0.036,0.082,0.152,0,0.306,0.238,0 +1539,26.513,0.98,1,-0.037,0.243,0.217,0.099,0.06,0.02,0,0.134,0.088,0.062,0.272,0,0.156,0.056,0.23,0.03,0.052,0.184,0,0.33,0.26,0 +1540,26.53,0.98,1,-0.039,0.234,0.206,0.092,0.062,0,0,0.13,0.094,0.064,0.246,0,0.16,0.068,0.236,0.018,0.034,0.206,0,0.324,0.25,0 +1541,26.547,0.98,1,-0.038,0.238,0.204,0.085,0.062,0,0,0.112,0.082,0.054,0.224,0,0.142,0.072,0.242,0.01,0.03,0.182,0,0.262,0.22,0 +1542,26.564,0.98,1,-0.045,0.234,0.192,0.078,0.063,0,0,0.106,0.076,0.056,0.248,0,0.12,0.08,0.244,0.02,0.066,0.164,0,0.144,0.172,0 +1543,26.582,0.98,1,-0.04,0.23,0.179,0.068,0.066,0,0,0.106,0.052,0.054,0.26,0,0.108,0.078,0.244,0.04,0.068,0.134,0,0.052,0.118,0 +1544,26.599,0.98,1,-0.044,0.23,0.178,0.062,0.067,0,0,0.114,0.05,0.06,0.25,0,0.114,0.084,0.242,0.076,0.076,0.13,0,0,0.072,0 +1545,26.616,0.98,1,-0.04,0.231,0.175,0.049,0.071,0,0,0.12,0.06,0.06,0.212,0,0.124,0.084,0.248,0.086,0.056,0.118,0,0,0.08,0 +1546,26.633,0.98,1,-0.041,0.232,0.179,0.039,0.077,0,0,0.116,0.082,0.052,0.202,0,0.132,0.082,0.246,0.102,0.05,0.088,0,0,0.106,0 +1547,26.65,0.98,1,-0.035,0.231,0.179,0.026,0.084,0.002,0,0.124,0.088,0.034,0.206,0,0.132,0.068,0.248,0.1,0.054,0.062,0,0.008,0.166,0 +1548,26.668,0.98,1,-0.032,0.227,0.189,0.013,0.093,0.016,0,0.124,0.09,0.016,0.154,0,0.154,0.064,0.248,0.1,0.07,0.048,0,0.018,0.19,0 +1549,26.685,0.98,1,-0.036,0.229,0.192,-0.004,0.105,0.034,0,0.13,0.116,0.006,0.088,0,0.186,0.064,0.264,0.098,0.094,0.044,0,0.028,0.222,0 +1550,26.702,0.98,1,-0.039,0.225,0.194,-0.018,0.112,0.062,0,0.124,0.12,0.004,0.044,0,0.226,0.074,0.26,0.098,0.098,0.052,0,0.028,0.202,0 +1551,26.719,0.98,1,-0.044,0.218,0.189,-0.034,0.121,0.084,0,0.114,0.102,0.002,0.048,0,0.246,0.078,0.272,0.102,0.106,0.032,0,0.016,0.188,0 +1552,26.737,0.98,1,-0.041,0.21,0.181,-0.051,0.132,0.114,0.022,0.096,0.068,0,0.062,0,0.256,0.074,0.272,0.108,0.112,0.024,0,0.008,0.146,0 +1553,26.754,0.98,1,-0.045,0.196,0.171,-0.066,0.143,0.146,0.066,0.096,0.068,0,0.066,0,0.266,0.068,0.294,0.106,0.126,0,0,0.008,0.132,0 +1554,26.771,0.98,1,-0.051,0.191,0.168,-0.079,0.151,0.188,0.108,0.108,0.112,0,0.078,0,0.27,0.066,0.296,0.112,0.144,0,0,0.024,0.11,0 +1555,26.788,0.98,1,-0.047,0.18,0.163,-0.094,0.161,0.212,0.152,0.134,0.13,0,0.088,0,0.266,0.08,0.326,0.108,0.178,0,0,0.028,0.106,0 +1556,26.806,0.98,1,-0.038,0.165,0.163,-0.106,0.169,0.218,0.164,0.156,0.14,0,0.098,0,0.266,0.088,0.336,0.104,0.198,0,0,0.044,0.112,0 +1557,26.823,0.98,1,-0.037,0.166,0.158,-0.113,0.175,0.198,0.184,0.178,0.124,0,0.088,0,0.264,0.09,0.344,0.09,0.204,0,0,0.084,0.14,0 +1558,26.84,0.98,1,-0.038,0.171,0.165,-0.113,0.175,0.174,0.162,0.176,0.126,0,0.086,0,0.278,0.088,0.328,0.068,0.174,0,0,0.152,0.186,0 +1559,26.857,0.98,1,-0.041,0.175,0.177,-0.113,0.177,0.156,0.136,0.172,0.132,0,0.072,0,0.302,0.098,0.302,0.038,0.152,0,0,0.236,0.236,0 +1560,26.874,0.98,1,-0.041,0.182,0.186,-0.113,0.18,0.154,0.102,0.16,0.144,0.004,0.08,0,0.336,0.114,0.276,0.012,0.116,0,0,0.302,0.272,0 +1561,26.892,0.98,1,-0.045,0.18,0.189,-0.115,0.184,0.156,0.078,0.156,0.154,0.006,0.08,0,0.35,0.13,0.262,0.002,0.098,0,0,0.348,0.284,0 +1562,26.909,0.98,1,-0.043,0.173,0.189,-0.116,0.184,0.142,0.086,0.162,0.148,0.014,0.076,0,0.346,0.138,0.272,0,0.086,0,0,0.354,0.264,0 +1563,26.926,0.98,1,-0.046,0.181,0.188,-0.11,0.181,0.126,0.086,0.164,0.126,0.028,0.098,0,0.348,0.156,0.292,0,0.1,0,0,0.346,0.236,0 +1564,26.943,0.98,1,-0.053,0.185,0.187,-0.106,0.182,0.134,0.122,0.168,0.108,0.046,0.098,0,0.358,0.172,0.296,0,0.11,0,0,0.332,0.22,0 +1565,26.961,0.98,1,-0.05,0.191,0.191,-0.102,0.181,0.154,0.132,0.162,0.104,0.054,0.118,0,0.372,0.182,0.316,0,0.126,0,0,0.328,0.214,0 +1566,26.978,0.98,1,-0.052,0.189,0.186,-0.099,0.181,0.186,0.17,0.166,0.122,0.048,0.118,0,0.358,0.176,0.334,0.004,0.148,0,0,0.306,0.21,0 +1567,26.995,0.98,1,-0.047,0.182,0.18,-0.1,0.184,0.21,0.206,0.182,0.126,0.038,0.136,0,0.344,0.168,0.354,0.008,0.17,0,0,0.282,0.186,0 +1568,27.012,0.98,1,-0.056,0.184,0.175,-0.097,0.184,0.224,0.242,0.182,0.124,0.04,0.17,0,0.33,0.174,0.362,0.018,0.19,0,0,0.214,0.152,0 +1569,27.029,0.98,1,-0.056,0.185,0.173,-0.095,0.183,0.216,0.24,0.192,0.094,0.048,0.198,0,0.322,0.178,0.372,0.018,0.194,0,0,0.17,0.13,0 +1570,27.047,0.98,1,-0.058,0.18,0.173,-0.093,0.182,0.202,0.228,0.174,0.096,0.06,0.236,0,0.322,0.192,0.388,0.018,0.192,0,0,0.136,0.122,0 +1571,27.064,0.98,1,-0.066,0.18,0.173,-0.088,0.18,0.196,0.234,0.164,0.092,0.06,0.252,0,0.318,0.19,0.392,0.018,0.188,0,0,0.13,0.122,0 +1572,27.081,0.98,1,-0.065,0.183,0.172,-0.086,0.179,0.196,0.27,0.144,0.112,0.056,0.24,0,0.324,0.196,0.39,0.014,0.202,0,0,0.126,0.12,0 +1573,27.098,0.98,1,-0.061,0.184,0.176,-0.084,0.175,0.198,0.298,0.132,0.128,0.052,0.226,0,0.334,0.19,0.382,0.016,0.218,0,0,0.118,0.114,0 +1574,27.116,0.98,1,-0.061,0.187,0.178,-0.081,0.174,0.2,0.308,0.132,0.116,0.052,0.222,0,0.338,0.19,0.392,0.008,0.23,0,0,0.11,0.124,0 +1575,27.133,0.98,1,-0.071,0.187,0.18,-0.078,0.173,0.21,0.316,0.13,0.092,0.054,0.24,0,0.344,0.184,0.41,0.008,0.232,0,0,0.094,0.146,0 +1576,27.15,0.98,1,-0.066,0.192,0.179,-0.075,0.173,0.208,0.302,0.134,0.072,0.058,0.256,0,0.356,0.192,0.428,0.004,0.24,0,0,0.064,0.15,0 +1577,27.167,0.98,1,-0.066,0.188,0.177,-0.074,0.172,0.218,0.322,0.132,0.074,0.054,0.242,0,0.37,0.188,0.432,0,0.24,0,0,0.04,0.13,0 +1578,27.185,0.98,1,-0.07,0.191,0.175,-0.073,0.173,0.22,0.32,0.122,0.078,0.056,0.244,0,0.37,0.194,0.422,0,0.242,0,0,0.018,0.106,0 +1579,27.202,0.98,1,-0.072,0.192,0.172,-0.073,0.171,0.228,0.332,0.116,0.07,0.056,0.248,0,0.35,0.194,0.414,0,0.232,0,0,0.008,0.098,0 +1580,27.219,0.98,1,-0.071,0.189,0.169,-0.073,0.169,0.228,0.336,0.12,0.07,0.064,0.26,0,0.332,0.202,0.416,0,0.238,0,0,0,0.096,0 +1581,27.236,0.98,1,-0.071,0.19,0.165,-0.071,0.163,0.218,0.366,0.136,0.06,0.068,0.228,0,0.324,0.208,0.42,0,0.238,0,0,0,0.092,0 +1582,27.253,0.98,1,-0.068,0.188,0.163,-0.068,0.16,0.222,0.396,0.156,0.066,0.064,0.194,0,0.322,0.202,0.41,0,0.242,0,0,0,0.092,0 +1583,27.271,0.98,1,-0.062,0.196,0.167,-0.064,0.155,0.226,0.398,0.16,0.068,0.054,0.192,0,0.314,0.188,0.39,0,0.242,0,0,0,0.106,0 +1584,27.288,0.98,1,-0.066,0.2,0.169,-0.062,0.15,0.244,0.392,0.168,0.072,0.044,0.192,0,0.31,0.174,0.37,0,0.254,0,0,0,0.11,0 +1585,27.305,0.98,1,-0.062,0.194,0.168,-0.06,0.145,0.232,0.36,0.152,0.078,0.04,0.188,0,0.308,0.162,0.354,0,0.256,0,0,0,0.132,0 +1586,27.322,0.98,1,-0.065,0.193,0.169,-0.056,0.139,0.234,0.352,0.146,0.08,0.048,0.178,0,0.31,0.156,0.358,0,0.252,0,0,0,0.152,0 +1587,27.34,0.98,1,-0.071,0.195,0.172,-0.055,0.133,0.22,0.296,0.146,0.084,0.054,0.204,0,0.302,0.154,0.354,0,0.226,0,0,0,0.176,0 +1588,27.357,0.98,1,-0.072,0.194,0.171,-0.054,0.127,0.208,0.27,0.15,0.084,0.048,0.21,0,0.3,0.15,0.33,0,0.208,0,0,0,0.184,0 +1589,27.374,0.98,1,-0.069,0.18,0.157,-0.055,0.123,0.182,0.222,0.138,0.088,0.034,0.198,0,0.294,0.154,0.304,0,0.182,0,0,0.014,0.19,0 +1590,27.391,0.98,1,-0.059,0.192,0.161,-0.051,0.114,0.174,0.216,0.122,0.106,0.028,0.152,0,0.286,0.146,0.288,0,0.174,0,0,0.022,0.186,0 +1591,27.408,0.98,1,-0.061,0.193,0.158,-0.049,0.109,0.164,0.186,0.114,0.13,0.024,0.122,0,0.276,0.14,0.28,0,0.168,0,0,0.04,0.192,0 +1592,27.426,0.98,1,-0.06,0.202,0.164,-0.043,0.103,0.164,0.156,0.124,0.148,0.026,0.106,0,0.266,0.134,0.272,0,0.168,0,0,0.056,0.208,0 +1593,27.443,0.98,1,-0.057,0.2,0.168,-0.037,0.099,0.154,0.11,0.128,0.154,0.026,0.104,0,0.266,0.132,0.254,0,0.152,0,0,0.082,0.232,0 +1594,27.46,0.98,1,-0.062,0.206,0.174,-0.032,0.093,0.152,0.076,0.128,0.144,0.028,0.102,0,0.276,0.136,0.258,0,0.138,0,0,0.098,0.238,0 +1595,27.477,0.98,1,-0.053,0.207,0.175,-0.025,0.084,0.14,0.042,0.108,0.138,0.024,0.104,0,0.276,0.138,0.242,0.006,0.122,0,0,0.104,0.242,0 +1596,27.495,0.98,1,-0.047,0.2,0.165,-0.028,0.084,0.116,0.018,0.096,0.14,0.026,0.116,0,0.272,0.142,0.23,0.006,0.118,0,0,0.112,0.23,0 +1597,27.512,0.98,1,-0.051,0.205,0.169,-0.022,0.077,0.094,0.004,0.084,0.16,0.02,0.106,0,0.262,0.138,0.222,0.006,0.106,0,0,0.128,0.23,0 +1598,27.529,0.98,1,-0.032,0.204,0.169,-0.019,0.071,0.068,0,0.068,0.168,0.02,0.098,0,0.238,0.138,0.212,0.006,0.098,0,0,0.134,0.222,0 +1599,27.546,0.98,1,-0.031,0.209,0.17,-0.015,0.067,0.046,0,0.052,0.166,0.026,0.078,0,0.224,0.138,0.242,0.022,0.096,0.024,0,0.144,0.22,0 +1600,27.564,0.98,1,-0.027,0.208,0.168,-0.01,0.063,0.046,0,0.052,0.15,0.04,0.084,0,0.212,0.136,0.242,0.036,0.1,0.062,0,0.148,0.21,0 +1601,27.581,0.98,1,-0.033,0.209,0.165,-0.009,0.062,0.054,0,0.054,0.136,0.05,0.086,0,0.22,0.13,0.264,0.046,0.116,0.102,0,0.138,0.188,0 +1602,27.598,0.98,1,-0.024,0.205,0.163,-0.009,0.062,0.068,0,0.064,0.126,0.058,0.108,0,0.218,0.114,0.262,0.054,0.12,0.128,0,0.084,0.156,0 +1603,27.615,0.98,1,-0.023,0.207,0.165,-0.007,0.064,0.068,0,0.064,0.138,0.052,0.14,0,0.208,0.104,0.266,0.056,0.13,0.114,0,0.038,0.126,0 +1604,27.632,0.98,1,-0.019,0.217,0.177,-0.005,0.065,0.08,0,0.08,0.154,0.036,0.138,0,0.19,0.08,0.256,0.074,0.14,0.082,0,0,0.112,0 +1605,27.65,0.98,1,0.013,0.238,0.183,-0.004,0.07,0.106,0,0.076,0.166,0.014,0.108,0,0.18,0.066,0.232,0.062,0.154,0.04,0,0,0.1,0 +1606,27.667,0.98,1,0.068,0.251,0.184,-0.005,0.076,0.13,0.022,0.082,0.174,0,0.084,0,0.184,0.052,0.21,0.05,0.162,0.014,0,0,0.1,0 +1607,27.684,0.98,1,0.103,0.23,0.176,-0.01,0.081,0.156,0.04,0.08,0.186,0,0.05,0,0.204,0.04,0.202,0.02,0.162,0.006,0,0,0.108,0 +1608,27.701,0.98,1,0.135,0.235,0.176,-0.018,0.083,0.17,0.062,0.1,0.188,0,0.046,0,0.22,0.038,0.19,0.01,0.158,0,0,0.026,0.152,0 +1609,27.719,0.98,1,0.131,0.236,0.199,-0.021,0.085,0.19,0.088,0.102,0.184,0,0.03,0,0.236,0.03,0.186,0.01,0.164,0.016,0,0.084,0.21,0 +1610,27.736,0.98,1,0.131,0.241,0.212,-0.026,0.089,0.196,0.136,0.106,0.166,0,0.034,0,0.252,0.04,0.18,0.006,0.166,0.032,0,0.134,0.258,0 +1611,27.753,0.98,1,0.14,0.244,0.201,-0.032,0.094,0.196,0.182,0.104,0.17,0,0.02,0,0.252,0.038,0.19,0.016,0.174,0.034,0,0.16,0.26,0 +1612,27.77,0.98,1,0.139,0.242,0.191,-0.035,0.095,0.186,0.194,0.104,0.15,0,0.004,0,0.238,0.04,0.198,0.026,0.174,0.02,0,0.124,0.226,0 +1613,27.787,0.98,1,0.14,0.241,0.188,-0.04,0.095,0.184,0.19,0.1,0.132,0,0,0,0.208,0.032,0.21,0.044,0.18,0.004,0,0.074,0.17,0 +1614,27.805,0.98,1,0.138,0.248,0.179,-0.045,0.095,0.198,0.202,0.084,0.118,0,0,0,0.17,0.028,0.218,0.05,0.198,0.008,0,0.024,0.126,0 +1615,27.822,0.98,1,0.141,0.248,0.172,-0.05,0.095,0.214,0.212,0.07,0.112,0,0,0,0.132,0.026,0.222,0.05,0.214,0.006,0,0,0.08,0 +1616,27.839,0.98,1,0.139,0.243,0.166,-0.055,0.098,0.228,0.242,0.062,0.128,0,0,0,0.11,0.024,0.214,0.04,0.236,0.006,0,0,0.07,0 +1617,27.856,0.98,1,0.138,0.24,0.165,-0.058,0.099,0.23,0.246,0.044,0.13,0,0,0,0.102,0.022,0.202,0.026,0.242,0,0,0,0.074,0 +1618,27.874,0.98,1,0.143,0.241,0.167,-0.058,0.099,0.238,0.258,0.048,0.132,0,0.006,0,0.114,0.022,0.206,0.024,0.238,0.002,0,0,0.088,0 +1619,27.891,0.98,1,0.143,0.246,0.176,-0.057,0.098,0.254,0.258,0.038,0.142,0,0.006,0,0.128,0.022,0.21,0.026,0.226,0.008,0,0,0.086,0 +1620,27.908,0.98,1,0.15,0.25,0.177,-0.057,0.097,0.274,0.278,0.044,0.15,0,0.006,0,0.138,0.026,0.214,0.026,0.22,0.008,0,0,0.092,0 +1621,27.925,0.98,1,0.157,0.253,0.181,-0.057,0.096,0.296,0.292,0.038,0.172,0,0.002,0,0.142,0.032,0.208,0.016,0.218,0.008,0,0,0.09,0 +1622,27.943,0.98,1,0.157,0.255,0.192,-0.055,0.094,0.312,0.32,0.042,0.188,0,0.002,0,0.14,0.036,0.206,0.012,0.228,0,0,0,0.106,0 +1623,27.96,0.98,1,0.155,0.257,0.189,-0.059,0.094,0.33,0.338,0.054,0.19,0,0.002,0,0.134,0.038,0.186,0.01,0.23,0,0,0,0.112,0 +1624,27.977,0.98,1,0.159,0.261,0.195,-0.063,0.094,0.342,0.376,0.07,0.182,0,0,0,0.116,0.028,0.17,0.008,0.242,0,0,0,0.118,0 +1625,27.994,0.98,1,0.165,0.253,0.195,-0.067,0.095,0.36,0.41,0.098,0.16,0,0,0,0.104,0.022,0.17,0.004,0.248,0,0,0,0.108,0 +1626,28.011,0.98,1,0.158,0.275,0.195,-0.073,0.099,0.396,0.454,0.12,0.156,0,0.022,0,0.096,0.012,0.176,0,0.26,0,0,0,0.102,0 +1627,28.029,0.98,1,0.154,0.275,0.201,-0.077,0.1,0.43,0.478,0.14,0.144,0,0.032,0,0.094,0.014,0.19,0.002,0.278,0,0,0,0.112,0.004 +1628,28.046,0.98,1,0.144,0.273,0.207,-0.082,0.102,0.45,0.494,0.16,0.138,0,0.054,0,0.098,0.012,0.188,0.024,0.29,0,0,0,0.126,0.004 +1629,28.063,0.98,1,0.142,0.268,0.211,-0.085,0.104,0.45,0.512,0.184,0.122,0,0.068,0,0.104,0.008,0.204,0.042,0.312,0,0,0,0.134,0.004 +1630,28.08,0.98,1,0.126,0.279,0.222,-0.087,0.105,0.446,0.536,0.212,0.122,0,0.082,0,0.11,0.004,0.212,0.054,0.316,0,0,0,0.124,0 +1631,28.098,0.98,1,0.136,0.274,0.236,-0.091,0.104,0.462,0.56,0.238,0.106,0,0.088,0,0.108,0,0.216,0.054,0.324,0,0,0,0.108,0 +1632,28.115,0.98,1,0.132,0.275,0.244,-0.098,0.106,0.472,0.574,0.266,0.12,0,0.102,0,0.096,0,0.194,0.056,0.308,0,0,0,0.098,0 +1633,28.132,0.98,1,0.135,0.27,0.251,-0.104,0.107,0.488,0.602,0.286,0.112,0,0.102,0,0.08,0,0.188,0.048,0.284,0,0,0,0.1,0 +1634,28.149,0.98,1,0.148,0.269,0.251,-0.113,0.109,0.472,0.632,0.302,0.138,0,0.116,0,0.05,0,0.2,0.028,0.254,0,0,0,0.128,0.002 +1635,28.166,0.98,1,0.153,0.266,0.257,-0.119,0.108,0.482,0.658,0.298,0.116,0,0.114,0,0.028,0,0.208,0.008,0.234,0,0,0,0.148,0.002 +1636,28.184,0.98,1,0.16,0.269,0.249,-0.129,0.109,0.48,0.674,0.302,0.146,0,0.144,0,0.014,0,0.194,0,0.22,0,0,0,0.17,0.002 +1637,28.201,0.98,1,0.165,0.273,0.251,-0.14,0.112,0.51,0.678,0.314,0.154,0,0.182,0,0.024,0,0.172,0,0.216,0,0,0,0.166,0.01 +1638,28.218,0.98,1,0.162,0.271,0.248,-0.148,0.113,0.522,0.688,0.324,0.176,0,0.202,0,0.028,0,0.178,0,0.216,0,0,0,0.168,0.01 +1639,28.235,0.98,1,0.155,0.269,0.253,-0.153,0.113,0.548,0.692,0.312,0.158,0,0.226,0,0.042,0,0.208,0,0.224,0,0,0,0.17,0.01 +1640,28.253,0.98,1,0.165,0.267,0.258,-0.153,0.113,0.548,0.704,0.288,0.172,0,0.232,0,0.042,0,0.222,0,0.212,0,0,0,0.196,0 +1641,28.27,0.98,1,0.159,0.267,0.265,-0.151,0.114,0.554,0.702,0.28,0.18,0,0.246,0,0.068,0,0.232,0,0.214,0,0,0,0.218,0 +1642,28.287,0.98,1,0.157,0.26,0.264,-0.145,0.113,0.548,0.692,0.294,0.19,0,0.234,0,0.082,0,0.224,0,0.216,0,0,0,0.24,0 +1643,28.304,0.98,1,0.157,0.263,0.265,-0.142,0.113,0.554,0.686,0.308,0.164,0,0.22,0,0.112,0,0.228,0,0.23,0,0,0,0.244,0 +1644,28.322,0.98,1,0.164,0.267,0.267,-0.135,0.112,0.55,0.686,0.306,0.148,0,0.19,0,0.126,0.002,0.232,0,0.23,0,0,0,0.25,0 +1645,28.339,0.98,1,0.16,0.263,0.268,-0.128,0.111,0.542,0.702,0.31,0.142,0,0.182,0,0.148,0.008,0.24,0,0.224,0,0,0,0.25,0 +1646,28.356,0.98,1,0.162,0.259,0.27,-0.124,0.111,0.528,0.692,0.306,0.14,0,0.158,0,0.154,0.016,0.256,0,0.222,0,0,0,0.252,0 +1647,28.373,0.98,1,0.158,0.266,0.272,-0.121,0.11,0.518,0.694,0.314,0.152,0,0.164,0,0.156,0.018,0.278,0,0.224,0,0,0,0.256,0 +1648,28.39,0.98,1,0.15,0.26,0.268,-0.118,0.11,0.52,0.666,0.312,0.162,0,0.152,0,0.17,0.012,0.278,0,0.24,0,0,0,0.26,0 +1649,28.408,0.98,1,0.149,0.254,0.258,-0.121,0.114,0.528,0.664,0.32,0.162,0,0.172,0,0.19,0.004,0.272,0,0.248,0,0,0,0.266,0 +1650,28.425,0.98,1,0.155,0.252,0.258,-0.12,0.116,0.542,0.648,0.322,0.16,0,0.172,0,0.212,0,0.248,0,0.254,0,0,0,0.284,0 +1651,28.442,0.98,1,0.154,0.249,0.255,-0.119,0.117,0.544,0.668,0.326,0.174,0,0.202,0.002,0.214,0.002,0.246,0,0.236,0,0,0,0.282,0 +1652,28.459,0.98,1,0.149,0.25,0.253,-0.119,0.117,0.54,0.664,0.326,0.192,0,0.212,0.006,0.218,0.006,0.248,0,0.24,0,0,0,0.278,0 +1653,28.477,0.98,1,0.141,0.259,0.252,-0.119,0.115,0.534,0.67,0.334,0.182,0,0.232,0.006,0.208,0.01,0.26,0,0.246,0,0,0,0.264,0 +1654,28.494,0.98,1,0.142,0.26,0.254,-0.119,0.112,0.536,0.662,0.346,0.148,0,0.236,0.004,0.202,0.016,0.266,0,0.258,0,0,0,0.262,0 +1655,28.511,0.98,1,0.143,0.26,0.258,-0.12,0.114,0.544,0.67,0.36,0.126,0,0.248,0,0.184,0.014,0.274,0,0.256,0,0,0,0.25,0 +1656,28.528,0.98,1,0.143,0.262,0.257,-0.118,0.113,0.548,0.694,0.364,0.124,0,0.246,0,0.176,0.014,0.278,0,0.246,0,0,0,0.25,0 +1657,28.545,0.98,1,0.146,0.259,0.259,-0.117,0.114,0.552,0.698,0.36,0.12,0,0.224,0,0.168,0.006,0.286,0,0.248,0,0,0,0.26,0 +1658,28.563,0.98,1,0.144,0.258,0.259,-0.116,0.115,0.552,0.708,0.348,0.116,0,0.204,0,0.172,0.004,0.282,0,0.248,0,0,0,0.274,0 +1659,28.58,0.98,1,0.138,0.26,0.257,-0.115,0.115,0.552,0.704,0.338,0.108,0,0.196,0,0.176,0,0.276,0,0.246,0,0,0,0.274,0 +1660,28.597,0.98,1,0.139,0.263,0.258,-0.112,0.114,0.554,0.716,0.332,0.11,0,0.184,0.002,0.176,0,0.278,0,0.242,0,0,0,0.264,0 +1661,28.614,0.98,1,0.147,0.253,0.263,-0.111,0.114,0.546,0.718,0.334,0.088,0,0.18,0.002,0.178,0,0.268,0,0.242,0,0,0,0.252,0 +1662,28.632,0.98,1,0.136,0.265,0.261,-0.112,0.114,0.546,0.702,0.344,0.09,0,0.194,0.002,0.176,0,0.276,0,0.258,0,0,0,0.25,0 +1663,28.649,0.98,1,0.148,0.261,0.261,-0.114,0.117,0.534,0.674,0.348,0.088,0,0.228,0,0.18,0,0.274,0,0.266,0,0,0,0.252,0 +1664,28.666,0.98,1,0.14,0.264,0.262,-0.113,0.118,0.532,0.678,0.352,0.114,0,0.236,0,0.182,0,0.282,0,0.276,0,0,0,0.258,0.002 +1665,28.683,0.98,1,0.147,0.267,0.262,-0.117,0.119,0.53,0.694,0.346,0.118,0,0.234,0,0.182,0,0.284,0,0.28,0,0,0,0.264,0.002 +1666,28.701,0.98,1,0.135,0.258,0.265,-0.115,0.117,0.538,0.732,0.35,0.126,0,0.21,0,0.184,0.002,0.284,0,0.284,0,0,0,0.266,0.004 +1667,28.718,0.98,1,0.13,0.248,0.265,-0.116,0.119,0.548,0.758,0.354,0.128,0,0.2,0,0.182,0.002,0.298,0,0.296,0,0,0,0.256,0.01 +1668,28.735,0.98,1,0.123,0.258,0.266,-0.119,0.12,0.566,0.768,0.356,0.118,0,0.192,0,0.18,0.002,0.298,0,0.298,0,0.002,0,0.24,0.03 +1669,28.752,0.98,1,0.12,0.261,0.266,-0.124,0.121,0.58,0.776,0.366,0.102,0,0.228,0,0.168,0,0.302,0,0.3,0,0.002,0,0.23,0.028 +1670,28.769,0.98,1,0.12,0.261,0.268,-0.125,0.119,0.598,0.77,0.376,0.09,0,0.248,0,0.158,0,0.31,0,0.3,0,0.002,0,0.236,0.028 +1671,28.787,0.98,1,0.115,0.266,0.269,-0.129,0.12,0.594,0.78,0.392,0.108,0,0.264,0,0.142,0,0.298,0,0.31,0,0.004,0,0.246,0.008 +1672,28.804,0.98,1,0.121,0.275,0.267,-0.133,0.123,0.586,0.784,0.402,0.118,0,0.272,0,0.132,0,0.3,0,0.328,0,0.006,0,0.252,0.008 +1673,28.821,0.98,1,0.129,0.27,0.267,-0.136,0.122,0.568,0.776,0.406,0.106,0,0.264,0,0.132,0,0.282,0,0.336,0,0.006,0,0.26,0 +1674,28.838,0.98,1,0.136,0.274,0.27,-0.139,0.122,0.56,0.764,0.406,0.086,0,0.262,0,0.13,0,0.282,0,0.344,0,0.004,0,0.252,0 +1675,28.856,0.98,1,0.134,0.272,0.266,-0.141,0.12,0.558,0.75,0.398,0.126,0,0.254,0,0.14,0.002,0.278,0,0.362,0,0.002,0,0.264,0 +1676,28.873,0.98,1,0.151,0.268,0.263,-0.147,0.122,0.566,0.742,0.394,0.196,0,0.27,0,0.146,0,0.266,0,0.358,0,0.002,0,0.272,0.002 +1677,28.89,0.98,1,0.173,0.292,0.267,-0.147,0.123,0.562,0.722,0.382,0.258,0,0.26,0,0.16,0,0.268,0,0.346,0,0,0,0.292,0.002 +1678,28.907,0.98,1,0.171,0.292,0.272,-0.148,0.121,0.56,0.732,0.384,0.25,0,0.23,0,0.168,0,0.274,0,0.31,0,0,0,0.288,0.002 +1679,28.924,0.98,1,0.169,0.307,0.281,-0.144,0.116,0.55,0.746,0.37,0.234,0,0.214,0,0.178,0,0.288,0,0.282,0,0,0,0.294,0 +1680,28.942,0.98,1,0.174,0.299,0.285,-0.144,0.112,0.548,0.762,0.37,0.218,0,0.21,0,0.19,0,0.292,0,0.268,0,0,0,0.296,0 +1681,28.959,0.98,1,0.168,0.298,0.291,-0.145,0.113,0.542,0.744,0.364,0.238,0,0.23,0,0.196,0.002,0.282,0,0.254,0,0,0,0.312,0 +1682,28.976,0.98,1,0.17,0.3,0.301,-0.146,0.112,0.528,0.722,0.376,0.234,0,0.228,0.002,0.2,0.008,0.262,0,0.254,0,0,0.01,0.312,0 +1683,28.993,0.98,1,0.177,0.301,0.309,-0.148,0.11,0.518,0.716,0.378,0.234,0,0.244,0.006,0.206,0.012,0.268,0,0.238,0,0,0.01,0.318,0 +1684,29.011,0.98,1,0.165,0.295,0.304,-0.151,0.111,0.52,0.718,0.382,0.198,0,0.264,0.008,0.2,0.022,0.272,0,0.242,0,0,0.014,0.316,0 +1685,29.028,0.98,1,0.168,0.286,0.306,-0.157,0.112,0.536,0.738,0.378,0.178,0,0.292,0.008,0.198,0.022,0.282,0,0.228,0,0,0.004,0.302,0 +1686,29.045,0.98,1,0.166,0.288,0.308,-0.157,0.11,0.546,0.738,0.38,0.154,0,0.302,0.004,0.2,0.024,0.272,0,0.234,0,0,0.004,0.296,0 +1687,29.062,0.98,1,0.167,0.278,0.3,-0.158,0.109,0.548,0.722,0.384,0.146,0,0.308,0.002,0.206,0.018,0.274,0,0.228,0,0,0.014,0.294,0 +1688,29.08,0.98,1,0.173,0.296,0.3,-0.158,0.108,0.542,0.702,0.392,0.144,0,0.304,0.002,0.21,0.02,0.28,0,0.242,0,0,0.026,0.308,0.002 +1689,29.097,0.98,1,0.179,0.293,0.296,-0.16,0.107,0.548,0.708,0.396,0.148,0,0.318,0,0.212,0.016,0.292,0,0.25,0,0,0.044,0.31,0.002 +1690,29.114,0.98,1,0.167,0.278,0.294,-0.16,0.108,0.552,0.73,0.382,0.166,0,0.324,0,0.214,0.014,0.292,0,0.258,0,0,0.052,0.32,0.002 +1691,29.131,0.98,1,0.176,0.273,0.288,-0.161,0.108,0.564,0.744,0.364,0.186,0,0.334,0,0.204,0.006,0.286,0,0.256,0,0,0.054,0.318,0 +1692,29.148,0.98,1,0.165,0.272,0.291,-0.16,0.108,0.576,0.768,0.36,0.188,0,0.33,0,0.194,0.004,0.272,0,0.254,0,0,0.052,0.316,0 +1693,29.166,0.98,1,0.164,0.284,0.295,-0.158,0.107,0.576,0.774,0.366,0.184,0,0.314,0.002,0.176,0.006,0.28,0,0.252,0,0,0.052,0.32,0 +1694,29.183,0.98,1,0.167,0.285,0.291,-0.156,0.105,0.58,0.782,0.382,0.166,0,0.288,0.002,0.172,0.006,0.288,0,0.258,0,0,0.052,0.334,0 +1695,29.2,0.98,1,0.16,0.292,0.295,-0.154,0.105,0.574,0.762,0.398,0.172,0,0.27,0.002,0.16,0.006,0.286,0,0.254,0,0,0.048,0.342,0 +1696,29.217,0.98,1,0.162,0.284,0.292,-0.153,0.104,0.576,0.754,0.412,0.184,0,0.254,0,0.162,0.002,0.272,0,0.262,0,0,0.03,0.334,0 +1697,29.235,0.98,1,0.186,0.29,0.287,-0.154,0.105,0.568,0.744,0.422,0.168,0,0.242,0,0.162,0.002,0.252,0,0.266,0,0,0.012,0.322,0 +1698,29.252,0.98,1,0.196,0.3,0.282,-0.158,0.106,0.586,0.744,0.414,0.156,0,0.234,0.002,0.168,0,0.246,0,0.28,0,0,0,0.302,0 +1699,29.269,0.98,1,0.206,0.284,0.274,-0.164,0.11,0.6,0.768,0.39,0.158,0,0.232,0.002,0.164,0,0.246,0,0.304,0,0.022,0,0.274,0.006 +1700,29.286,0.98,1,0.205,0.283,0.268,-0.173,0.115,0.628,0.768,0.36,0.158,0,0.202,0.002,0.142,0,0.286,0.002,0.324,0,0.05,0,0.24,0.042 +1701,29.303,0.98,1,0.225,0.286,0.219,-0.181,0.09,0.636,0.768,0.358,0.16,0,0.19,0,0.116,0,0.306,0.002,0.338,0,0.07,0,0.226,0.052 +1702,29.321,0.98,1,0.214,0.293,0.262,-0.166,0.093,0.64,0.746,0.368,0.128,0,0.182,0,0.102,0,0.324,0.002,0.328,0,0.058,0,0.232,0.044 +1703,29.338,0.98,1,0.203,0.297,0.278,-0.171,0.108,0.636,0.746,0.392,0.126,0,0.218,0,0.116,0,0.32,0,0.338,0,0.032,0,0.248,0.01 +1704,29.355,0.98,1,0.196,0.302,0.281,-0.167,0.11,0.626,0.746,0.382,0.15,0,0.242,0,0.136,0,0.33,0,0.32,0,0.012,0,0.254,0.03 +1705,29.372,0.98,1,0.179,0.331,0.289,-0.159,0.109,0.628,0.748,0.348,0.176,0,0.22,0,0.16,0,0.322,0,0.286,0,0.002,0,0.244,0.098 +1706,29.39,0.98,1,0.144,0.381,0.27,-0.15,0.106,0.63,0.736,0.282,0.214,0,0.142,0,0.186,0.008,0.29,0.026,0.232,0,0,0,0.238,0.194 +1707,29.407,0.98,1,0.082,0.383,0.278,-0.14,0.1,0.628,0.706,0.224,0.194,0,0.05,0,0.208,0.018,0.252,0.046,0.192,0,0,0,0.236,0.282 +1708,29.424,0.98,1,0.029,0.393,0.275,-0.131,0.096,0.616,0.658,0.192,0.2,0,0,0,0.216,0.024,0.206,0.072,0.166,0,0,0,0.262,0.332 +1709,29.441,0.98,1,0.042,0.396,0.269,-0.123,0.092,0.604,0.63,0.18,0.204,0,0,0,0.216,0.016,0.202,0.072,0.156,0,0,0.028,0.278,0.366 +1710,29.459,0.98,1,0.044,0.395,0.269,-0.121,0.089,0.596,0.608,0.158,0.24,0,0,0,0.222,0.012,0.2,0.088,0.156,0,0,0.06,0.292,0.372 +1711,29.476,0.98,1,0.059,0.396,0.265,-0.122,0.087,0.606,0.616,0.156,0.264,0,0,0,0.228,0.022,0.236,0.084,0.16,0,0,0.08,0.296,0.38 +1712,29.493,0.98,1,0.077,0.406,0.246,-0.124,0.086,0.622,0.662,0.146,0.242,0,0,0,0.212,0.034,0.264,0.076,0.178,0,0,0.054,0.274,0.356 +1713,29.51,0.98,1,0.075,0.414,0.249,-0.126,0.086,0.662,0.726,0.168,0.22,0,0.012,0,0.184,0.052,0.29,0.06,0.208,0,0,0.02,0.226,0.322 +1714,29.527,0.98,1,0.084,0.419,0.26,-0.13,0.088,0.722,0.796,0.182,0.194,0,0.034,0,0.168,0.076,0.318,0.04,0.246,0,0,0,0.176,0.278 +1715,29.545,0.98,1,0.111,0.423,0.264,-0.134,0.088,0.794,0.852,0.236,0.196,0,0.106,0,0.166,0.096,0.35,0.028,0.29,0,0,0,0.174,0.252 +1716,29.562,0.98,1,0.134,0.425,0.271,-0.134,0.089,0.83,0.896,0.282,0.19,0,0.2,0,0.192,0.104,0.382,0.014,0.312,0,0,0,0.202,0.226 +1717,29.579,0.98,1,0.132,0.427,0.281,-0.133,0.092,0.868,0.942,0.324,0.166,0,0.302,0,0.206,0.104,0.394,0.024,0.318,0,0,0,0.23,0.198 +1718,29.596,0.98,1,0.115,0.412,0.28,-0.136,0.097,0.878,0.968,0.334,0.168,0,0.342,0,0.218,0.104,0.378,0.016,0.304,0,0,0,0.252,0.168 +1719,29.614,0.98,1,0.121,0.406,0.279,-0.136,0.099,0.908,0.996,0.336,0.17,0,0.356,0,0.204,0.094,0.356,0.014,0.302,0,0,0,0.262,0.136 +1720,29.631,0.98,1,0.13,0.391,0.272,-0.136,0.102,0.902,0.994,0.336,0.18,0,0.33,0,0.188,0.08,0.35,0.01,0.316,0,0,0,0.256,0.108 +1721,29.648,0.98,1,0.145,0.383,0.261,-0.138,0.104,0.902,0.966,0.322,0.17,0,0.296,0,0.174,0.078,0.358,0.018,0.326,0,0,0,0.232,0.1 +1722,29.665,0.98,1,0.135,0.369,0.256,-0.138,0.106,0.876,0.916,0.308,0.162,0,0.244,0,0.17,0.084,0.37,0.016,0.328,0,0,0,0.2,0.096 +1723,29.682,0.98,1,0.126,0.34,0.256,-0.139,0.109,0.85,0.894,0.316,0.152,0,0.224,0,0.184,0.092,0.38,0.01,0.3,0,0,0,0.19,0.11 +1724,29.7,0.98,1,0.139,0.321,0.252,-0.133,0.108,0.822,0.908,0.338,0.154,0,0.236,0,0.194,0.096,0.374,0.008,0.282,0,0,0,0.178,0.098 +1725,29.717,0.98,1,0.137,0.301,0.247,-0.13,0.109,0.816,0.95,0.366,0.162,0,0.282,0,0.204,0.106,0.398,0.008,0.264,0,0,0,0.188,0.088 +1726,29.734,0.98,1,0.14,0.286,0.259,-0.124,0.109,0.81,0.958,0.382,0.158,0,0.304,0,0.206,0.122,0.4,0.008,0.274,0,0,0,0.192,0.048 +1727,29.751,0.98,1,0.153,0.269,0.263,-0.12,0.11,0.782,0.916,0.386,0.132,0,0.342,0,0.226,0.146,0.424,0,0.264,0,0,0,0.21,0.02 +1728,29.769,0.98,1,0.157,0.262,0.272,-0.116,0.109,0.752,0.886,0.392,0.1,0,0.378,0,0.256,0.17,0.418,0,0.242,0,0,0.014,0.216,0 +1729,29.786,0.98,1,0.146,0.262,0.292,-0.102,0.103,0.734,0.87,0.384,0.106,0,0.404,0,0.266,0.194,0.432,0,0.234,0,0,0.036,0.212,0 +1730,29.803,0.98,1,0.141,0.25,0.297,-0.098,0.102,0.738,0.916,0.398,0.1,0.006,0.4,0,0.27,0.214,0.432,0,0.224,0,0,0.068,0.202,0 +1731,29.82,0.98,1,0.136,0.266,0.313,-0.091,0.097,0.734,0.93,0.402,0.112,0.02,0.406,0,0.264,0.23,0.426,0,0.232,0,0,0.078,0.19,0 +1732,29.838,0.98,1,0.146,0.271,0.321,-0.088,0.094,0.728,0.932,0.408,0.084,0.036,0.41,0,0.276,0.246,0.422,0,0.218,0,0,0.078,0.174,0 +1733,29.855,0.98,1,0.143,0.274,0.322,-0.086,0.094,0.724,0.922,0.4,0.07,0.054,0.434,0,0.292,0.26,0.436,0.004,0.212,0,0,0.068,0.168,0 +1734,29.872,0.98,1,0.144,0.273,0.323,-0.085,0.094,0.728,0.896,0.388,0.04,0.064,0.434,0,0.292,0.268,0.46,0.004,0.214,0,0,0.07,0.15,0 +1735,29.889,0.98,1,0.143,0.269,0.323,-0.082,0.094,0.718,0.876,0.378,0.052,0.074,0.446,0,0.292,0.282,0.482,0.004,0.222,0,0,0.068,0.138,0 +1736,29.906,0.98,1,0.142,0.276,0.323,-0.08,0.094,0.708,0.846,0.358,0.066,0.084,0.47,0,0.286,0.292,0.484,0,0.222,0,0,0.062,0.108,0 +1737,29.924,0.98,1,0.132,0.269,0.326,-0.078,0.097,0.69,0.852,0.356,0.068,0.102,0.482,0,0.294,0.312,0.478,0,0.23,0,0,0.058,0.09,0 +1738,29.941,0.98,1,0.137,0.272,0.322,-0.079,0.1,0.684,0.872,0.356,0.04,0.112,0.502,0,0.294,0.32,0.478,0,0.246,0,0,0.038,0.08,0 +1739,29.958,0.98,1,0.146,0.257,0.317,-0.08,0.101,0.678,0.868,0.372,0.016,0.11,0.492,0,0.282,0.318,0.492,0,0.276,0,0,0.022,0.086,0 +1740,29.975,0.98,1,0.135,0.247,0.292,-0.086,0.105,0.676,0.866,0.382,0,0.112,0.504,0,0.274,0.318,0.524,0,0.294,0,0,0.002,0.09,0 +1741,29.993,0.98,1,0.151,0.252,0.3,-0.08,0.101,0.66,0.86,0.384,0.02,0.116,0.508,0.004,0.276,0.316,0.538,0,0.31,0,0.014,0,0.09,0 +1742,30.01,0.98,1,0.141,0.246,0.282,-0.082,0.103,0.642,0.878,0.374,0.044,0.118,0.524,0.012,0.282,0.308,0.536,0,0.318,0,0.072,0,0.078,0 +1743,30.027,0.93,1,0.141,0.245,0.262,-0.084,0.105,0.632,0.89,0.368,0.046,0.11,0.522,0.012,0.274,0.284,0.514,0,0.346,0,0.146,0,0.064,0 +1744,30.044,0.98,1,0.124,0.252,0.244,-0.086,0.111,0.64,0.898,0.364,0.028,0.098,0.538,0.008,0.246,0.266,0.494,0,0.37,0,0.218,0,0.058,0 +1745,30.061,0.98,1,0.115,0.253,0.232,-0.09,0.116,0.624,0.898,0.36,0.002,0.09,0.54,0,0.228,0.258,0.482,0,0.388,0,0.254,0,0.058,0 +1746,30.079,0.98,1,0.112,0.265,0.233,-0.091,0.114,0.618,0.894,0.354,0,0.076,0.562,0,0.212,0.25,0.472,0,0.386,0,0.264,0,0.072,0 +1747,30.096,0.98,1,0.093,0.266,0.234,-0.096,0.116,0.596,0.872,0.362,0.02,0.068,0.562,0.002,0.224,0.244,0.474,0,0.364,0,0.252,0,0.07,0 +1748,30.113,0.98,1,0.097,0.268,0.237,-0.096,0.114,0.584,0.824,0.372,0.04,0.066,0.576,0.01,0.268,0.244,0.472,0,0.338,0,0.176,0,0.088,0.006 +1749,30.13,0.93,1,0.095,0.275,0.265,-0.097,0.109,0.56,0.778,0.376,0.064,0.074,0.57,0.024,0.318,0.256,0.474,0,0.304,0,0.1,0.006,0.12,0.006 +1750,30.148,0.98,1,0.11,0.305,0.273,-0.099,0.1,0.528,0.716,0.366,0.09,0.07,0.554,0.034,0.362,0.258,0.458,0,0.268,0,0.024,0.032,0.17,0.006 +1751,30.165,0.98,1,0.101,0.314,0.286,-0.099,0.09,0.494,0.678,0.366,0.094,0.068,0.53,0.036,0.39,0.248,0.462,0,0.236,0,0.006,0.078,0.198,0 +1752,30.182,0.98,1,0.105,0.318,0.286,-0.101,0.081,0.46,0.628,0.376,0.088,0.054,0.52,0.038,0.4,0.24,0.46,0,0.194,0,0,0.124,0.238,0 +1753,30.199,0.98,1,0.105,0.317,0.277,-0.1,0.069,0.448,0.608,0.386,0.052,0.056,0.516,0.054,0.398,0.232,0.458,0,0.154,0,0,0.156,0.274,0 +1754,30.217,0.98,1,0.093,0.326,0.292,-0.095,0.061,0.452,0.594,0.394,0.054,0.04,0.518,0.066,0.36,0.21,0.418,0,0.132,0,0,0.162,0.328,0 +1755,30.234,0.98,1,0.078,0.339,0.287,-0.096,0.058,0.46,0.614,0.384,0.048,0.026,0.498,0.088,0.314,0.162,0.362,0,0.144,0,0.008,0.128,0.352,0 +1756,30.251,0.98,1,0.081,0.332,0.28,-0.097,0.056,0.46,0.634,0.364,0.062,0.008,0.456,0.098,0.254,0.098,0.3,0,0.174,0,0.044,0.07,0.364,0.004 +1757,30.268,0.98,1,0.085,0.334,0.267,-0.102,0.05,0.472,0.652,0.348,0.054,0,0.432,0.104,0.196,0.05,0.24,0,0.214,0,0.086,0.018,0.354,0.018 +1758,30.285,0.98,1,0.087,0.339,0.269,-0.099,0.043,0.474,0.616,0.318,0.054,0,0.398,0.092,0.146,0.018,0.21,0,0.23,0,0.136,0,0.344,0.028 +1759,30.303,0.98,1,0.099,0.336,0.261,-0.092,0.036,0.466,0.596,0.31,0.032,0,0.374,0.064,0.124,0.024,0.212,0,0.242,0,0.154,0,0.33,0.03 +1760,30.32,0.98,1,0.089,0.346,0.28,-0.088,0.032,0.446,0.566,0.294,0.028,0,0.33,0.04,0.112,0.032,0.24,0,0.23,0,0.168,0,0.324,0.016 +1761,30.337,0.98,1,0.09,0.349,0.267,-0.085,0.03,0.43,0.548,0.286,0.032,0,0.326,0.02,0.116,0.05,0.268,0,0.232,0,0.164,0,0.304,0.014 +1762,30.354,0.98,1,0.083,0.353,0.268,-0.08,0.027,0.432,0.528,0.282,0.042,0.002,0.33,0.012,0.124,0.066,0.262,0,0.21,0,0.15,0,0.27,0.012 +1763,30.372,0.98,1,0.095,0.352,0.272,-0.073,0.026,0.43,0.512,0.28,0.054,0.016,0.318,0.004,0.142,0.09,0.266,0,0.178,0,0.108,0,0.232,0.012 +1764,30.389,0.98,1,0.095,0.359,0.282,-0.066,0.027,0.424,0.474,0.282,0.05,0.036,0.334,0,0.176,0.118,0.258,0,0.136,0,0.052,0,0.212,0.006 +1765,30.406,0.98,1,0.093,0.348,0.275,-0.062,0.029,0.412,0.446,0.28,0.042,0.06,0.354,0.002,0.19,0.14,0.282,0,0.102,0,0.016,0,0.23,0.006 +1766,30.423,0.98,1,0.085,0.35,0.274,-0.053,0.03,0.408,0.424,0.272,0.02,0.074,0.372,0.004,0.202,0.158,0.266,0,0.056,0,0,0,0.242,0.022 +1767,30.44,0.98,1,0.09,0.348,0.27,-0.049,0.033,0.41,0.422,0.266,0.04,0.086,0.352,0.004,0.204,0.168,0.276,0,0.028,0,0,0.02,0.256,0.03 +1768,30.458,0.98,1,0.102,0.345,0.26,-0.045,0.037,0.402,0.378,0.25,0.056,0.092,0.346,0.002,0.23,0.174,0.27,0,0.004,0,0,0.064,0.268,0.044 +1769,30.475,0.98,1,0.09,0.358,0.274,-0.04,0.037,0.388,0.342,0.236,0.072,0.094,0.342,0,0.25,0.172,0.286,0,0.014,0,0,0.112,0.278,0.04 +1770,30.492,0.98,1,0.096,0.356,0.258,-0.043,0.042,0.368,0.306,0.232,0.068,0.096,0.364,0,0.264,0.172,0.272,0,0.024,0,0,0.158,0.292,0.038 +1771,30.509,0.98,1,0.097,0.36,0.266,-0.041,0.041,0.362,0.292,0.23,0.068,0.092,0.36,0.006,0.272,0.17,0.274,0,0.03,0,0,0.172,0.292,0.016 +1772,30.527,0.98,1,0.09,0.341,0.255,-0.043,0.045,0.358,0.294,0.234,0.074,0.094,0.37,0.006,0.27,0.178,0.268,0,0.032,0,0,0.15,0.278,0.022 +1773,30.544,0.98,1,0.1,0.353,0.254,-0.042,0.044,0.37,0.316,0.224,0.068,0.098,0.348,0.006,0.256,0.186,0.276,0,0.036,0,0.01,0.086,0.234,0.036 +1774,30.561,0.98,1,0.074,0.345,0.238,-0.045,0.048,0.364,0.33,0.21,0.054,0.102,0.344,0,0.236,0.198,0.274,0,0.064,0,0.032,0.03,0.18,0.046 +1775,30.578,0.98,1,0.084,0.337,0.225,-0.048,0.05,0.368,0.346,0.192,0.032,0.112,0.328,0,0.228,0.216,0.286,0,0.084,0,0.042,0,0.146,0.032 +1776,30.596,0.98,1,0.09,0.343,0.232,-0.045,0.049,0.354,0.338,0.188,0.012,0.114,0.302,0,0.238,0.226,0.284,0,0.104,0,0.034,0,0.128,0.022 +1777,30.613,0.98,1,0.092,0.349,0.229,-0.047,0.052,0.34,0.324,0.188,0.006,0.118,0.292,0,0.244,0.232,0.29,0,0.12,0,0.016,0,0.126,0.018 +1778,30.63,0.98,1,0.102,0.358,0.218,-0.051,0.056,0.318,0.294,0.182,0.006,0.104,0.252,0,0.252,0.226,0.288,0,0.13,0,0.01,0,0.134,0.042 +1779,30.647,0.98,1,0.085,0.351,0.213,-0.055,0.06,0.32,0.288,0.178,0.008,0.086,0.22,0,0.258,0.216,0.292,0,0.14,0,0.008,0,0.14,0.048 +1780,30.664,0.98,1,0.074,0.353,0.216,-0.058,0.066,0.318,0.284,0.176,0.004,0.07,0.168,0,0.268,0.212,0.268,0,0.138,0,0.004,0.01,0.146,0.048 +1781,30.682,0.98,1,0.087,0.351,0.198,-0.064,0.072,0.32,0.28,0.184,0.004,0.062,0.136,0,0.272,0.202,0.258,0,0.138,0,0,0.042,0.148,0.05 +1782,30.699,0.98,1,0.083,0.346,0.188,-0.067,0.076,0.282,0.244,0.18,0.012,0.06,0.138,0,0.278,0.2,0.258,0,0.134,0,0,0.096,0.166,0.072 +1783,30.716,0.98,1,0.091,0.356,0.172,-0.068,0.079,0.252,0.21,0.162,0.016,0.06,0.132,0,0.288,0.194,0.284,0,0.132,0,0,0.152,0.176,0.114 +1784,30.733,0.98,1,0.085,0.354,0.174,-0.07,0.084,0.214,0.162,0.14,0.022,0.064,0.138,0,0.316,0.192,0.298,0,0.126,0,0,0.2,0.194,0.168 +1785,30.751,0.98,1,0.096,0.36,0.171,-0.074,0.089,0.192,0.132,0.122,0.01,0.064,0.096,0,0.332,0.186,0.32,0,0.136,0,0,0.248,0.236,0.206 +1786,30.768,0.98,1,0.098,0.36,0.156,-0.078,0.096,0.172,0.104,0.126,0.006,0.062,0.08,0,0.356,0.186,0.332,0,0.144,0,0,0.284,0.268,0.222 +1787,30.785,0.98,1,0.097,0.356,0.151,-0.078,0.099,0.146,0.072,0.122,0,0.062,0.06,0,0.356,0.188,0.344,0,0.156,0,0,0.322,0.294,0.236 +1788,30.802,0.98,1,0.09,0.352,0.145,-0.08,0.102,0.142,0.07,0.122,0.004,0.064,0.068,0,0.372,0.196,0.332,0,0.146,0,0,0.332,0.282,0.248 +1789,30.819,0.98,1,0.084,0.351,0.148,-0.081,0.107,0.142,0.064,0.114,0.008,0.076,0.078,0,0.372,0.2,0.348,0,0.144,0.002,0,0.344,0.286,0.28 +1790,30.837,0.98,1,0.082,0.347,0.149,-0.081,0.112,0.154,0.072,0.1,0.008,0.088,0.102,0,0.38,0.21,0.364,0,0.146,0.004,0,0.328,0.258,0.292 +1791,30.854,0.98,1,0.081,0.342,0.139,-0.082,0.114,0.156,0.084,0.098,0.004,0.102,0.118,0,0.384,0.226,0.386,0.016,0.16,0.004,0,0.294,0.212,0.298 +1792,30.871,0.98,1,0.083,0.349,0.141,-0.081,0.113,0.172,0.106,0.086,0,0.104,0.12,0,0.382,0.238,0.388,0.03,0.174,0.002,0,0.232,0.15,0.302 +1793,30.888,0.98,1,0.084,0.346,0.129,-0.085,0.119,0.192,0.14,0.082,0,0.102,0.11,0,0.374,0.248,0.406,0.052,0.2,0,0,0.18,0.114,0.284 +1794,30.906,0.98,1,0.09,0.347,0.128,-0.088,0.123,0.22,0.178,0.092,0,0.1,0.106,0,0.364,0.252,0.43,0.05,0.226,0,0,0.122,0.098,0.274 +1795,30.923,0.98,1,0.084,0.352,0.129,-0.089,0.125,0.232,0.206,0.11,0,0.102,0.092,0,0.358,0.252,0.446,0.06,0.242,0,0,0.098,0.09,0.262 +1796,30.94,0.98,1,0.084,0.349,0.133,-0.092,0.128,0.246,0.212,0.134,0,0.102,0.1,0,0.362,0.252,0.444,0.062,0.25,0,0,0.07,0.086,0.248 +1797,30.957,0.98,1,0.078,0.344,0.139,-0.095,0.131,0.248,0.212,0.138,0,0.096,0.096,0,0.366,0.24,0.442,0.08,0.26,0,0,0.068,0.08,0.24 +1798,30.975,0.98,1,0.074,0.344,0.141,-0.1,0.135,0.254,0.218,0.14,0,0.092,0.096,0,0.366,0.232,0.438,0.076,0.268,0,0,0.04,0.082,0.218 +1799,30.992,0.98,1,0.069,0.348,0.142,-0.103,0.138,0.254,0.228,0.134,0,0.074,0.092,0,0.354,0.212,0.436,0.104,0.304,0,0,0.022,0.098,0.234 +1800,31.009,0.98,1,0.074,0.345,0.139,-0.111,0.142,0.268,0.238,0.138,0,0.05,0.102,0,0.324,0.198,0.414,0.14,0.352,0,0,0,0.094,0.236 diff --git a/modules/input_facsfromcsv/openfacefiltercsv.py b/modules/input_facsfromcsv/openfacefiltercsv.py index d8374fb..e93d0d2 100755 --- a/modules/input_facsfromcsv/openfacefiltercsv.py +++ b/modules/input_facsfromcsv/openfacefiltercsv.py @@ -21,13 +21,10 @@ class FilterCSV: def __init__(self, col_keep=None): # , dir_processed, col_keep, dir_timestamp """Transform csv to Panda dataframe which can be accessed by other functions - :param csv_file: Path object to csv file - :param col_keep: + :param col_keep: columns to keep in .csv file [AU*_r, pose_R.*, gaze_angle*]; None for all If cleaned csv exist, skip cleaning and load directly as dataframe """ - # dir_processed: where to find .csv files - # col_keep: columns to keep in .csv file [AU*_r, pose, gaze] if col_keep is None: col_keep = ['AU.*_r', 'pose_R.*', 'gaze_angle*'] @@ -36,28 +33,6 @@ def __init__(self, col_keep=None): # , dir_processed, col_keep, dir_timestamp # Action Units and head rotation self.col_keep = col_keep # , 'gaze_angle*' - # skip cleaning and load clean as dataframe - # change string to path object - # csv_file = Path(csv_file) - - # csv_clean = csv_file - # # add _clean to parent directory - # print(csv_clean.parts[-2]) - # # csv_clean.parts[-2] = Path(str(csv_clean.parts[-2]) + "_clean") - # csv_clean.parts[-2] = csv_clean.parts[-2] + "_clean" - - # csv_clean = Path(str(csv_file.parents[0]) + '_clean/' + csv_file.parts[-1]) - - # if csv_clean.exists(): # Path(csv_file[:-4] + "_clean.csv") - # print("OpenFace .csv already cleaned") - # #self.df_csv = pd.read_csv(csv_file[:-4] + "_clean.csv") - # self.df_csv = pd.read_csv(csv_clean) - # - # # load csv as dataframe and clean - # else: - # print("Cleaning OpenFace .csv") - # self.clean_controller(csv_file, csv_clean) - # removes space in header, e.g. ' confidence' --> 'confidence' def clean_header_space(self): self.df_csv.columns = self.df_csv.columns.str.strip() @@ -88,26 +63,14 @@ def reset_au_interval(self): # save cleaned dataframe as csv def csv_save(self, csv_clean): - """ + """Dataframe to csv :param csv_clean: Path object for saving cleaned csv """ - # get dir without file name - # windows - # if os.name == 'nt': - # path_list = csv_file.split('\\') - # # other OS - # else: - # path_list = csv_file.split('/') - # - # dir_output = join(path_list) - # create dir preprocessed if not existing, Python 3.2+ os.makedirs(csv_clean.parents[0], exist_ok=True) - # df.loc[:, df.columns.str.contains('a')] - # self.df_csv.to_csv(csv_file[:-4] + "_clean.csv", index=False) # , columns=[] self.df_csv.to_csv(csv_clean, index=False) # calls all cleaning + save functions @@ -116,7 +79,6 @@ def clean_controller(self, csv_raw, csv_folder_clean): :param csv_raw: path to raw file :param csv_folder_clean: path to folder with cleaned files - :return: """ print("Cleaning: {} and save to {}".format(csv_raw, csv_folder_clean)) @@ -128,9 +90,6 @@ def clean_controller(self, csv_raw, csv_folder_clean): # remove rows with bad AU tracking TODO do something with failed tracking #self.clean_unsuccessful() - # remove non-speech rows based on timestamps provided with dataset - # self.clean_nonspeech(file) - # dataframe with only c_keep columns self.clean_columns() diff --git a/modules/n_proxy_m_bus.py b/modules/n_bridge_m.py similarity index 58% rename from modules/n_proxy_m_bus.py rename to modules/n_bridge_m.py index cb447a2..376a3ea 100644 --- a/modules/n_proxy_m_bus.py +++ b/modules/n_bridge_m.py @@ -25,6 +25,7 @@ import sys +import time import argparse from functools import partial import zmq.asyncio @@ -38,10 +39,10 @@ # own import; if statement for documentation if __name__ == '__main__': sys.path.append("..") - from facsvatarzeromq import FACSvatarZeroMQ + from facsvatarzeromq import FACSvatarZeroMQ, time_hns from smooth_data import SmoothData else: - from modules.facsvatarzeromq import FACSvatarZeroMQ + from modules.facsvatarzeromq import FACSvatarZeroMQ, time_hns from .smooth_data import SmoothData @@ -54,49 +55,11 @@ def __init__(self, **kwargs): # keep dict of smooth object per topic self.smooth_obj_dict = {} - # # overwrite existing start function - # def start(self, async_func_list=None): - # """No functions given --> data pass through only; else apply function on data before forwarding - # - # N publishers to 1 sub; proxy 1 sub to 1 pub; publish to M subscribers - # """ - # - # # make sure pub / sub is initialised - # if not self.pub_socket or not self.sub_socket: - # print("Both pub and sub needs to be initiliased and set to bind") - # print("Pub: {}".format(self.pub_socket)) - # print("Sub: {}".format(self.sub_socket)) - # sys.exit() - # - # # apply function to data to passing through data - # if async_func_list: - # import asyncio - # # capture ZeroMQ errors; ZeroMQ using asyncio doesn't print out errors - # try: - # asyncio.get_event_loop().run_until_complete(asyncio.wait( - # [func() for func in async_func_list] - # )) - # except Exception as e: - # print("Error with async function") - # # print(e) - # logging.error(traceback.format_exc()) - # print() - # - # finally: - # # TODO disconnect pub/sub - # pass - # - # # don't duplicate the message, just pass through - # else: - # print("Try: Proxy... CONNECT!") - # zmq.proxy(self.pub_socket, self.sub_socket) - # print("CONNECT successful!") - # converts gaze radians into eye rotation AU values def gaze_to_au(self, au_dict, gaze): # eye gaze in message as AU eye_angle = [gaze['gaze_angle_x'], gaze['gaze_angle_y']] # radians - print(eye_angle) + print("Gaze: {}".format(eye_angle)) # eyes go about 60 degree, which is 1.0472 rad, so no conversion needed? # set all to 0 (otherwise smoothing problems) @@ -124,91 +87,97 @@ def gaze_to_au(self, au_dict, gaze): async def pub_sub_function(self, apply_function): # async """Subscribes to FACS data, smooths, publishes it""" - # # class with data smoothing functions - # self.smooth_data = SmoothData() - # # get the function we need to pass data to - # smooth_func = getattr(self.smooth_data, apply_function) - new_smooth_object = False # await messages - print("Awaiting FACS data...") + logging.info("Awaiting FACS data...") # without try statement, no error output try: # keep listening to all published message on topic 'facs' while True: - msg = await self.sub_socket.recv_multipart() - print() - print(msg) + # msg = await self.sub_socket.recv_multipart() + key, timestamp, data = await self.sub_socket.sub() + logging.debug("Received message: {}".format([key, timestamp, data])) # check not finished; timestamp is empty (b'') - if msg[1]: - msg[2] = json.loads(msg[2].decode('utf-8')) + if timestamp: + # measure time + time_begin = time_hns() + time_now = time_begin # only pass on messages with enough tracking confidence; always send when no confidence param - if 'confidence' not in msg[2] or msg[2]['confidence'] >= 0.7: - # subscription key / topic - topic = msg[0].decode('ascii') + if 'confidence' not in data or data['confidence'] >= 0.7: + # convert gaze into AU 61, 62, 63, 64 + if "gaze" in data: + data['au_r'] = self.gaze_to_au(data['au_r'], data['gaze']) + # remove from message after AU convert + data.pop('gaze') # don't smooth data with 'smooth' == False; - if 'smooth' not in msg[2] or msg[2]['smooth']: + if 'smooth' not in data or data['smooth']: # if topic changed, instantiate a new SmoothData object - if topic not in self.smooth_obj_dict: - self.smooth_obj_dict[topic] = SmoothData() + if key not in self.smooth_obj_dict: + self.smooth_obj_dict[key] = SmoothData() new_smooth_object = True + logging.debug("TIME: smooth class init: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + # check au dict in data and not empty - if "au_r" in msg[2] and msg[2]['au_r']: - # convert gaze into AU 61, 62, 63, 64 - if "gaze" in msg[2]: - msg[2]['au_r'] = self.gaze_to_au(msg[2]['au_r'], msg[2]['gaze']) - # remove from message after AU convert - msg[2].pop('gaze') + if "au_r" in data and data['au_r']: + # logging.debug(f"TIME: Convert gaze to AU: {(time.time_ns() - time_now) / 1000000}") + # time_now = time.time_ns() # sort dict; dicts keep insert order Python 3.6+ - # au_r_dict = msg[2]['au_r'] - msg[2]['au_r'] = dict(sorted(msg[2]['au_r'].items(), key=lambda k: k[0])) + # au_r_dict = data['au_r'] + data['au_r'] = dict(sorted(data['au_r'].items(), key=lambda k: k[0])) # match number of multiplier columns: if new_smooth_object: - self.smooth_obj_dict[topic].set_new_multiplier(len(msg[2]['au_r'])) + self.smooth_obj_dict[key].set_new_multiplier(len(data['au_r'])) new_smooth_object = False # smooth facial expressions; window_size: number of past data points; # steep: weight newer data - # msg[2]['au_r'] = smooth_func(au_r_sorted, queue_no=0, window_size=4, steep=.35) - msg[2]['au_r'] = getattr(self.smooth_obj_dict[topic], apply_function)(msg[2]['au_r'], - queue_no=0, - window_size=3, - steep=.25) + # data['au_r'] = smooth_func(au_r_sorted, queue_no=0, window_size=4, steep=.35) + data['au_r'] = getattr(self.smooth_obj_dict[key], apply_function)(data['au_r'], + queue_no=0, + window_size=3, + steep=.25) + + logging.debug("TIME: Smooth AU: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() # check head rotation dict in data and not empty - if "pose" in msg[2] and msg[2]['pose']: + if "pose" in data and data['pose']: # smooth head position - # msg[2]['pose'] = smooth_func(msg[2]['pose'], queue_no=1, window_size=4, steep=.2) - msg[2]['pose'] = getattr(self.smooth_obj_dict[topic], apply_function)(msg[2]['pose'], queue_no=1, - window_size=6, - steep=.15) + # data['pose'] = smooth_func(data['pose'], queue_no=1, window_size=4, steep=.2) + data['pose'] = getattr(self.smooth_obj_dict[key], apply_function)(data['pose'], + queue_no=1, + window_size=6, + steep=.15) - # TODO add eye direction AU data + logging.debug("TIME: Smooth head pose: {}".format((time_hns() - time_now) / 1000000)) + # time_now = time.time() else: - print("No smoothing applied, forwarding unchanged") + logging.debug("No smoothing applied, forwarding unchanged") # remove topic from dict when msgs finish - print("Removing topic from smooth_obj_dict: {}".format(self.smooth_obj_dict.pop(topic, None))) + removed_topic = self.smooth_obj_dict.pop(key, None) + logging.debug("Removing topic from smooth_obj_dict: {}" + .format(removed_topic)) # send modified message - print(msg) - await self.pub_socket.send_multipart([msg[0], # topic - msg[1], # timestamp - # data in JSON format or empty byte - json.dumps(msg[2]).encode('utf-8') - ]) + logging.debug("TIME: Smoothed data: {}".format(data)) + logging.info(data) + await self.pub_socket.pub(data, key) # send message we're done else: print("No more messages to pass; finished") - await self.pub_socket.send_multipart([msg[0], b'', b'']) + await self.pub_socket.pub(b'', key) + + logging.debug("TIME: Total bridge: {}".format((time_hns() - time_now) / 1000000)) except: print("Error with sub") @@ -222,15 +191,13 @@ async def set_parameters(self): while True: try: - [id_dealer, topic, data] = await self.rout_socket.recv_multipart() - print("Command received from '{}', with topic '{}' and msg '{}'".format(id_dealer, topic, data)) + [id_dealer, key, data] = await self.rout_socket.recv_multipart() + print("Command received from '{}', with key '{}' and msg '{}'".format(id_dealer, key, data)) - tp = topic.decode('ascii') + tp = key.decode('ascii') # set multiplier parameters if tp.startswith("multiplier"): await self.set_multiplier(data.decode('utf-8')) - # elif tp.startswith("dnn"): - # await self.set_dnn_user(data.decode('utf-8')) else: print("Command ignored") @@ -289,5 +256,5 @@ async def set_multiplier(self, data): # init FACSvatar message class facsvatar_messages = FACSvatarMessages(**vars(args)) # start processing messages; get reference to function without executing - facsvatar_messages.start([partial(facsvatar_messages.pub_sub_function, "trailing_moving_average"), + facsvatar_messages.start([partial(facsvatar_messages.pub_sub_function, "trailing_moving_average2"), facsvatar_messages.set_parameters]) diff --git a/modules/output_facstojson/facstojson.py b/modules/output_facstofile/main.py similarity index 50% rename from modules/output_facstojson/facstojson.py rename to modules/output_facstofile/main.py index 008d791..238c56f 100644 --- a/modules/output_facstojson/facstojson.py +++ b/modules/output_facstofile/main.py @@ -3,9 +3,14 @@ import sys +import os import argparse +from pathlib import Path +import shutil from os.path import join import json +import csv + # own imports; if statement for documentation if __name__ == '__main__': @@ -15,18 +20,59 @@ from modules.facsvatarzeromq import FACSvatarZeroMQ -class MessageToJSON: +class MessageToFile: def __init__(self): self.counter = 0 - self.folder = "facsjson" + self.folderjson = Path("facsjson") + self.folderjson.mkdir(exist_ok=True) + self.removefilesinfolder(self.folderjson) + self.foldercsv = Path("facscsv") + self.foldercsv.mkdir(exist_ok=True) + # remove all existing files + # shutil.rmtree(join(str(self.foldercsv), "*")) + self.removefilesinfolder(self.foldercsv) + + # delete old files + def removefilesinfolder(self, folder_path): + for file in os.listdir(folder_path): + file_path = Path(folder_path, file) + try: + file_path.unlink() + # elif os.path.isdir(file_path): shutil.rmtree(file_path) + except Exception as e: + print(e) def facs_json(self, facs_json): print(json.dumps(facs_json, indent=4)) # save FACS data to JSON - with open(join(self.folder, "frame_{}.json".format(self.counter)), 'w') as outfile: + with open(Path(self.folderjson, "frame_{}.json".format(self.counter)), 'w') as outfile: json.dump(facs_json, outfile) self.counter += 1 + def facs_csv(self, key, data): + # save FACS data to CSV + # print(data) + + # flatten dict + au_dict = data.pop("au_r") + pose_dict = data.pop("pose") + # remove utc timestamp + _ = data.pop("timestamp_utc", "") + dict_flat = {**data, **pose_dict, **au_dict} + print(dict_flat) + + with open(Path(self.foldercsv, "{}.csv".format(key)), 'a') as outfile: + writer = csv.DictWriter(outfile, dict_flat.keys(), delimiter=',') + if self.counter == 0: + writer.writeheader() + writer.writerow(dict_flat) + # writer = csv.writer(outfile, delimiter=',') + # if self.counter == 0: + # writer.writeheader() + # writer.writerow() + + self.counter += 1 + def stop(self): print("All messages received") @@ -37,21 +83,21 @@ class FACSvatarMessages(FACSvatarZeroMQ): def __init__(self, **kwargs): super().__init__(**kwargs) - self.message_to_json = MessageToJSON() + self.message_to_file = MessageToFile() async def sub(self): # keep listening to all published message on topic 'facs' while True: - msg = await self.sub_socket.recv_multipart() - print("message: {}".format(msg)) + key, timestamp, data = await self.sub_socket.sub() + print("Received message: {}".format([key, timestamp, data])) # check not finished; timestamp is empty (b'') - if msg[1]: - # load message from bytes to json - msg[2] = json.loads(msg[2].decode('utf-8')) - + if timestamp: # process facs data only - self.message_to_json.facs_json(msg[2]['au_r']) + if self.misc['file_format'] == "json": + self.message_to_file.facs_json(data['au_r']) + elif self.misc['file_format'] == "csv": + self.message_to_file.facs_csv(key, data) # no more messages to be received else: @@ -73,6 +119,11 @@ async def sub(self): parser.add_argument("--sub_bind", default=False, help="True: socket.bind() / False: socket.connect(); Default: False") + # module specific commandline arguments + parser.add_argument("--file_format", default="json", + help="specific file format of how to store data;" + "json, csv; Default: json") + args, leftovers = parser.parse_known_args() print("The following arguments are used: {}".format(args)) print("The following arguments are ignored: {}\n".format(leftovers)) diff --git a/modules/output_facstojson/frame_0.json b/modules/output_facstojson/frame_0.json deleted file mode 100644 index 7367abc..0000000 --- a/modules/output_facstojson/frame_0.json +++ /dev/null @@ -1 +0,0 @@ -{"AU01": 0.12735770702764543, "AU02": 0.0, "AU04": 0.07575774540816016, "AU05": 0.0, "AU06": 0.18109441847722868, "AU07": 0.356032059970132, "AU09": 0.010762167867373815, "AU10": 0.16863244124957774, "AU12": 0.3410747150316749, "AU14": 0.43169730455847577, "AU15": 0.008399031576165176, "AU17": 0.19796786191774554, "AU20": 0.10427055735926978, "AU23": 0.0, "AU25": 0.0, "AU26": 0.09340212352235563, "AU45": 0.23285417749408796} \ No newline at end of file diff --git a/modules/process_facsdnnfacs/AU_json.json b/modules/process_facsdnnfacs/AU_json.json new file mode 100755 index 0000000..fffabd2 --- /dev/null +++ b/modules/process_facsdnnfacs/AU_json.json @@ -0,0 +1,19 @@ +{ + "AU01": 0, + "AU02": 0, + "AU04": 0, + "AU05": 0, + "AU06": 0, + "AU07": 0, + "AU09": 0, + "AU10": 0, + "AU12": 0, + "AU14": 0, + "AU15": 0, + "AU17": 0, + "AU20": 0, + "AU23": 0, + "AU25": 0, + "AU26": 0, + "AU45": 0 +} diff --git a/modules/process_facsdnnfacs/pub_deepfacs.py b/modules/process_facsdnnfacs/pub_deepfacs.py index 78510cd..470b788 100644 --- a/modules/process_facsdnnfacs/pub_deepfacs.py +++ b/modules/process_facsdnnfacs/pub_deepfacs.py @@ -14,6 +14,7 @@ import traceback import logging import zmq.asyncio +import asyncio # own imports; if statement for documentation @@ -36,6 +37,7 @@ async def facs_deep_facs(self, au_dict): # , id_cb, type_cb # TODO invert process by only keeping trained AU # temporary remove eye gaze AU data au_gaze = ('AU61', 'AU62', 'AU63', 'AU64') + # TODO check if exists au_gaze_dict = {k: au_dict.pop(k) for k in au_gaze if k in au_dict} # for au in : @@ -75,19 +77,19 @@ async def facs_deep_facs(self, au_dict): # , id_cb, type_cb #with tf.device('/gpu:0'): deep_au_array_val = self.facs_model.predict(au_array_val) # [np.newaxis] # print()dd ignored file - print(deep_au_array_val) + #print(deep_au_array_val) # print(np.asarray(deep_au_array_val)) # cast into dict format # print() - print(np.squeeze(deep_au_array_val)) + #print(np.squeeze(deep_au_array_val)) deep_au_dict = dict(zip(au_array_key, np.squeeze(deep_au_array_val).tolist())) - print(deep_au_dict) + #print(deep_au_dict) # change key type from byte to string deep_au_dict = {k.decode("utf-8"): v for k, v in deep_au_dict.items()} # print(deep_au_dict) - print("\n") + print("") #print(au_dict) print(deep_au_dict) @@ -102,40 +104,44 @@ class FACSvatarMessages(FACSvatarZeroMQ): def __init__(self, **kwargs): super().__init__(**kwargs) self.deepfacs = DeepFACSMsg() + self.json_file = "AU_json.json" # receiving data async def deep_sub_pub(self): + # # 1 time fake data to init DNN model + if os.path.exists(self.json_file): + print("Sending fake data to DNN to reduce start-up time...") + with open(self.json_file, 'r') as j: + fake_data = json.load(j) + result = await self.deepfacs.facs_deep_facs(fake_data) + # print("Fake data: {}".format(result)) + print("Fake data done") + + print("\nListening for message...") # keep listening to all published message on topic 'facs' while True: - msg = await self.sub_socket.recv_multipart() - print("message: {}".format(msg)) + # msg = await self.sub_socket.recv_multipart() + key, timestamp, data = await self.sub_socket.sub() + print("Received message: {}".format([key, timestamp, data])) # if pub key is specified # if self.pub_key: - # msg[0] = self.pub_key.encode('utf-8') + # key = self.pub_key.encode('utf-8') - msg[0] = ("dnn." + msg[0].decode('ascii')).encode('ascii') + # key = ("dnn." + key.decode('ascii')).encode('ascii') + key = "dnn." + key # check not finished; timestamp is empty (b'') - if msg[1]: - # process message - msg[2] = json.loads(msg[2].decode('utf-8')) + if timestamp: # generate Action Units based on user Action Units - msg[2]['au_r'] = await self.deepfacs.facs_deep_facs(msg[2]['au_r']) - - # async always needs `send_multipart()` - # print(msg) + data['au_r'] = await self.deepfacs.facs_deep_facs(data['au_r']) - await self.pub_socket.send_multipart([msg[0], # topic / key - msg[1], # timestamp - # data in JSON format or empty byte - json.dumps(msg[2]).encode('utf-8') - ]) + await self.pub_socket.pub(data, key) # send message we're done else: print("No more messages to publish; Deep FACS done") - await self.pub_socket.send_multipart([msg[0], b'', b'']) + await self.pub_socket.pub(b'', key) # receiving commands async def set_parameters(self): diff --git a/modules/process_facstoblend/AU_json.json b/modules/process_facstoblend/AU_json.json deleted file mode 100755 index 56057fc..0000000 --- a/modules/process_facstoblend/AU_json.json +++ /dev/null @@ -1 +0,0 @@ -{"AU01": "1", "AU02": "2"} diff --git a/modules/process_facstoblend/au2blendshapes_mb.py b/modules/process_facstoblend/au2blendshapes_mb.py index 42b7ee2..21cf248 100644 --- a/modules/process_facstoblend/au2blendshapes_mb.py +++ b/modules/process_facstoblend/au2blendshapes_mb.py @@ -8,9 +8,9 @@ # change AU values from OpenFace to Blend Shape (Shape Key) values understood by Unity / Blender / Unreal # for characters created in Blender + Manual Bastioni addon class AUtoBlendShapes: - def __init__(self): - # dictionary of values for changing AU to blendshapes - self.au_dict = self.load_json(join('AU_json')) + def __init__(self, au_folder="AU_json"): + # call function for dictionary of values for changing AU to blendshapes + self.au_dict = self.load_json(au_folder) print(self.au_dict) # frame tracker for index in dataframe @@ -19,10 +19,6 @@ def __init__(self): # AU to blendshapes self.blendshape_dict_new = json.load(open(join('blendshapes_MB.json'), 'r')) - # test - # for i in range(3): - # self.output_blendshapes() - # open all AU .json file in directory def load_json(self, json_dir): au_dict = {} diff --git a/modules/process_facstoblend/AU_json/AU01.json b/modules/process_facstoblend/au_json/AU01.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU01.json rename to modules/process_facstoblend/au_json/AU01.json diff --git a/modules/process_facstoblend/AU_json/AU02.json b/modules/process_facstoblend/au_json/AU02.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU02.json rename to modules/process_facstoblend/au_json/AU02.json diff --git a/modules/process_facstoblend/AU_json/AU04.json b/modules/process_facstoblend/au_json/AU04.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU04.json rename to modules/process_facstoblend/au_json/AU04.json diff --git a/modules/process_facstoblend/AU_json/AU05.json b/modules/process_facstoblend/au_json/AU05.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU05.json rename to modules/process_facstoblend/au_json/AU05.json diff --git a/modules/process_facstoblend/AU_json/AU06.json b/modules/process_facstoblend/au_json/AU06.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU06.json rename to modules/process_facstoblend/au_json/AU06.json diff --git a/modules/process_facstoblend/AU_json/AU09.json b/modules/process_facstoblend/au_json/AU09.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU09.json rename to modules/process_facstoblend/au_json/AU09.json diff --git a/modules/process_facstoblend/AU_json/AU10.json b/modules/process_facstoblend/au_json/AU10.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU10.json rename to modules/process_facstoblend/au_json/AU10.json diff --git a/modules/process_facstoblend/AU_json/AU12.json b/modules/process_facstoblend/au_json/AU12.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU12.json rename to modules/process_facstoblend/au_json/AU12.json diff --git a/modules/process_facstoblend/AU_json/AU14.json b/modules/process_facstoblend/au_json/AU14.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU14.json rename to modules/process_facstoblend/au_json/AU14.json diff --git a/modules/process_facstoblend/AU_json/AU15.json b/modules/process_facstoblend/au_json/AU15.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU15.json rename to modules/process_facstoblend/au_json/AU15.json diff --git a/modules/process_facstoblend/AU_json/AU17.json b/modules/process_facstoblend/au_json/AU17.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU17.json rename to modules/process_facstoblend/au_json/AU17.json diff --git a/modules/process_facstoblend/AU_json/AU20.json b/modules/process_facstoblend/au_json/AU20.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU20.json rename to modules/process_facstoblend/au_json/AU20.json diff --git a/modules/process_facstoblend/AU_json/AU23.json b/modules/process_facstoblend/au_json/AU23.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU23.json rename to modules/process_facstoblend/au_json/AU23.json diff --git a/modules/process_facstoblend/AU_json/AU25.json b/modules/process_facstoblend/au_json/AU25.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU25.json rename to modules/process_facstoblend/au_json/AU25.json diff --git a/modules/process_facstoblend/AU_json/AU26.json b/modules/process_facstoblend/au_json/AU26.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU26.json rename to modules/process_facstoblend/au_json/AU26.json diff --git a/modules/process_facstoblend/AU_json/AU45.json b/modules/process_facstoblend/au_json/AU45.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU45.json rename to modules/process_facstoblend/au_json/AU45.json diff --git a/modules/process_facstoblend/AU_json/AU61.json b/modules/process_facstoblend/au_json/AU61.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU61.json rename to modules/process_facstoblend/au_json/AU61.json diff --git a/modules/process_facstoblend/AU_json/AU62.json b/modules/process_facstoblend/au_json/AU62.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU62.json rename to modules/process_facstoblend/au_json/AU62.json diff --git a/modules/process_facstoblend/AU_json/AU63.json b/modules/process_facstoblend/au_json/AU63.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU63.json rename to modules/process_facstoblend/au_json/AU63.json diff --git a/modules/process_facstoblend/AU_json/AU64.json b/modules/process_facstoblend/au_json/AU64.json similarity index 100% rename from modules/process_facstoblend/AU_json/AU64.json rename to modules/process_facstoblend/au_json/AU64.json diff --git a/modules/process_facstoblend/pub_blend.py b/modules/process_facstoblend/main.py similarity index 71% rename from modules/process_facstoblend/pub_blend.py rename to modules/process_facstoblend/main.py index 876a691..0208624 100644 --- a/modules/process_facstoblend/pub_blend.py +++ b/modules/process_facstoblend/main.py @@ -22,31 +22,16 @@ # process everything that is received class BlendShapeMsg: - def __init__(self): - self.au_to_blendshapes = AUtoBlendShapes() + def __init__(self, au_folder): + self.au_to_blendshapes = AUtoBlendShapes(au_folder) - async def facs_to_blendshape(self, au_dict): # , id_cb, type_cb + async def facs_to_blendshape(self, au_dict): # au_dict: received facs values in JSON format - # print("----------------------------") - # print(type(au_dict)) - # # change JSON to Python internal dict - # facs_dict = json.loads(au_dict) - # print(type(facs_dict)) - # print("---") - # pretty printing - #print(json.dumps(facs_dict, indent=4)) # , indent=4, sort_keys=True - # change facs to blendshapes # TODO if None (should not receive any None prob) blend_dict = self.au_to_blendshapes.output_blendshapes(au_dict) - # print(blend_dict) - - # add blend dict under 'data' to received message and remove FACS - # msg_dict = self.structure_dict(facs_dict, blend_dict) - # publish blendshapes - # print(blend_dict) return blend_dict # # restructure to frame, timestamp, data={head_pose, blendshape} @@ -69,43 +54,44 @@ class FACSvatarMessages(FACSvatarZeroMQ): def __init__(self, **kwargs): super().__init__(**kwargs) - self.blendshape = BlendShapeMsg() + self.blendshape = BlendShapeMsg(self.misc["au_folder"]) async def blenshape_sub_pub(self): # keep listening to all published message on topic 'facs' while True: - msg = await self.sub_socket.recv_multipart() - print("message: {}".format(msg)) + # msg = await self.sub_socket.recv_multipart() + key, timestamp, data = await self.sub_socket.sub() + print("Received message: {}".format([key, timestamp, data])) # check not finished; timestamp is empty (b'') - if msg[1]: - # process message - msg[2] = json.loads(msg[2].decode('utf-8')) + if timestamp: # check not empty - if msg[2]: + if data: # transform Action Units to Blend Shapes - msg[2]['blendshapes'] = await self.blendshape.facs_to_blendshape(msg[2]['au_r']) + data['blendshapes'] = await self.blendshape.facs_to_blendshape(data['au_r']) # remove au_r from dict - msg[2].pop('au_r') + data.pop('au_r') - print(msg) - # async always needs `send_multipart()` - await self.pub_socket.send_multipart([msg[0], # topic - msg[1], # timestamp - # data in JSON format or empty byte - json.dumps(msg[2]).encode('utf-8') - ]) + print(data) + await self.pub_socket.pub(data, key) # send message we're done else: print("No more messages to publish; Blend Shapes done") - await self.pub_socket.send_multipart([msg[0], b'', b'']) + await self.pub_socket.pub(b'', key) if __name__ == '__main__': # command line arguments parser = argparse.ArgumentParser() + # logging commandline arguments + parser.add_argument("--module_id", default="facstoblend_1", + help="Module id for different instances of same module") + parser.add_argument("--loglevel", default=argparse.SUPPRESS, + help="Specify how detailed the terminal/logfile output should be;" + "DEBUG, INFO, WARNING, ERROR or CRITICAL; Default: INFO") + # subscriber to FACS / head movement data parser.add_argument("--sub_ip", default=argparse.SUPPRESS, help="IP (e.g. 192.168.x.x) of where to sub to; Default: 127.0.0.1 (local)") @@ -126,6 +112,10 @@ async def blenshape_sub_pub(self): parser.add_argument("--pub_bind", default=True, help="True: socket.bind() / False: socket.connect(); Default: True") + # module specific commandline arguments + parser.add_argument("--au_folder", default="au_json", + help="Name of folder with AU conversion files; Default: au_json") + args, leftovers = parser.parse_known_args() print("The following arguments are used: {}".format(args)) print("The following arguments are ignored: {}\n".format(leftovers)) diff --git a/modules/process_mixdnn/n_mix_m.py b/modules/process_mixdnn/n_mix_m.py index 10c8876..a1a710a 100644 --- a/modules/process_mixdnn/n_mix_m.py +++ b/modules/process_mixdnn/n_mix_m.py @@ -69,21 +69,19 @@ async def pub_sub_function(self, apply_function): # async try: # keep listening to all published message on topic 'facs' while True: - msg = await self.sub_socket.recv_multipart() + key, timestamp, data = await self.sub_socket.sub() print() - print(msg) + print("Received message: {}".format([key, timestamp, data])) # check not finished; timestamp is empty (b'') - if msg[1]: - msg[2] = json.loads(msg[2].decode('utf-8')) - + if timestamp: # only pass on messages with enough tracking confidence; always send when no confidence param - if 'confidence' not in msg[2] or msg[2]['confidence'] >= 0.7: + if 'confidence' not in data or data['confidence'] >= 0.7: # subscription key / topic - topic = msg[0].decode('ascii') + topic = key.decode('ascii') # check au dict in data and not empty - if "au_r" in msg[2] and msg[2]['au_r']: + if "au_r" in data and data['au_r']: # store data from not DNNed user for merging if not topic.startswith("dnn."): @@ -92,9 +90,9 @@ async def pub_sub_function(self, apply_function): # async # store data from eye blink AUs # user_data_au.put({k: v for k, v in au_r_sorted.items() if k in # ['AU45']}) - # au_data = {k: msg[2]['au_r'][k] for k in ('AU45',)} - au_data = {k: msg[2]['au_r'][k] for k in ('AU45', 'AU61', 'AU62', 'AU63', 'AU64') - if k in msg[2]['au_r']} + # au_data = {k: data['au_r'][k] for k in ('AU45',)} + au_data = {k: data['au_r'][k] for k in ('AU45', 'AU61', 'AU62', 'AU63', 'AU64') + if k in data['au_r']} print(au_data) user_data_au.put(au_data) print("\n\n") @@ -103,49 +101,45 @@ async def pub_sub_function(self, apply_function): # async else: print("DNN uses stored data") # try to override AU data - # msg[2]['au_r'] = {**msg[2]['au_r'], **stored_au} + # data['au_r'] = {**data['au_r'], **stored_au} try: # stored_au = await user_data_au.get() - msg[2]['au_r'] = {**msg[2]['au_r'], **user_data_au.get_nowait()} + data['au_r'] = {**data['au_r'], **user_data_au.get_nowait()} except queue.Empty as e: print("Queue empty") print(e) - print(msg[2]['au_r']) + print(data['au_r']) print() # check head rotation dict in data and not empty - if "pose" in msg[2] and msg[2]['pose']: + if "pose" in data and data['pose']: # store data if not topic.startswith("dnn."): # from not DNNed user for merging if self.dnn_user_store in topic.split("."): print("Storing data") # store data from eye blink AUs - user_data_pose.put(msg[2]['pose']) + user_data_pose.put(data['pose']) # use stored data for head pose else: print("DNN uses stored data") try: - msg[2]['pose'] = {**msg[2]['pose'], **user_data_pose.get_nowait()} + data['pose'] = {**data['pose'], **user_data_pose.get_nowait()} except queue.Empty as e: print("Queue empty") print(e) - print(msg[2]['pose']) + print(data['pose']) print() # add target user to display data (and not display original data) - msg[2]['user_ignore'] = self.dnn_user_store + data['user_ignore'] = self.dnn_user_store # send modified message - print(msg) - await self.pub_socket.send_multipart([msg[0], # topic - msg[1], # timestamp - # data in JSON format or empty byte - json.dumps(msg[2]).encode('utf-8') - ]) + # print(data) + await self.pub_socket.pub(data, key) else: print("Not enough tracking confidence to forward message") @@ -153,7 +147,7 @@ async def pub_sub_function(self, apply_function): # async # send message we're done else: print("No more messages to pass; finished") - await self.pub_socket.send_multipart([msg[0], b'', b'']) + await self.pub_socket.pub(b'', key) except: print("Error with sub") diff --git a/modules/smooth_data.py b/modules/smooth_data.py index 862f46b..61ce38f 100644 --- a/modules/smooth_data.py +++ b/modules/smooth_data.py @@ -1,3 +1,5 @@ +import time +import logging import math # import asyncio import pandas as pd @@ -7,6 +9,13 @@ # from collections import defaultdict import numpy as np +# own import; if statement for documentation +if __name__ == '__main__': + sys.path.append("..") + from facsvatarzeromq import time_hns +else: + from modules.facsvatarzeromq import time_hns + class SmoothData: """stores received data to smooth data @@ -17,13 +26,16 @@ class SmoothData: def __init__(self): # store dicts from previous time steps; e.g. [0] = facs, [1] = head_pose self.dataframe_list = [] + self.data_list = [] # matrix with previous dict values + # self.smooth_matrix = np.empty(0) # matrix with previous dict values + # self.smooth_AU = None # AU names self.set_new_multiplier() def set_new_multiplier(self, no_of_columns=17): # set multiplier vector per AU self.multiplier = np.ones(no_of_columns) if no_of_columns >= 17: # 17 - # set default blinking (AU45) multiplier; Make sure 16 is AU45 + # set default blinking (AU45) multiplier; Make sure 16 is AU45; TODO less hacky self.multiplier[16] = 1.5 print(self.multiplier) @@ -32,20 +44,13 @@ def softmax_smooth(self, series, steep=1): # series: 1 column as a pandas data series from a dataframe # steep: close to 0 means taking average, high steep means only looking at new data - # print(f"Smoothing:\n{series}") - # sum_0_n(e^(-steepness*n) x_n) / sum_0_n(e^(-steepness*n)) numerator = 0 denominator = 0 for n, x in enumerate(series): # reversed() numerator += math.exp(-steep * n) * x denominator += math.exp(-steep * n) # TODO calculate once - - # print(f"numerator: {numerator}") - # print(f"denominator: {denominator}") smooth = numerator / denominator - # print(f"smooth: {smooth}\n") - return smooth # use window of size 'window_size' data to smooth; window=1 is no smoothing @@ -54,6 +59,10 @@ def trailing_moving_average(self, data_dict, queue_no, window_size=3, steep=1): # queue_no: which data history should be used # trail: how many previous dicts should be remembered + # measure time + time_begin = time_hns() + time_now = time_begin + # no smoothing if window_size <= 1: return data_dict @@ -69,17 +78,21 @@ def trailing_moving_average(self, data_dict, queue_no, window_size=3, steep=1): # use labels as column names; switch index with columns # d_frame = d_frame.transpose() - print(data_dict) + logging.debug(data_dict) d_frame = pd.DataFrame.from_dict(data_dict, orient='index') d_frame = d_frame.transpose() # d_frame = pd.DataFrame.from_dict(list(data_dict.items())) - print(d_frame) + logging.debug(d_frame) # add calculated denominator as meta-data # d_frame.steep = steep - print("Add new queue") + logging.debug("Add new queue") self.dataframe_list.append(d_frame) + + logging.debug("TIME SMOOTH: Dict to pd dataframe: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + # return data frame in json format return data_dict @@ -88,6 +101,9 @@ def trailing_moving_average(self, data_dict, queue_no, window_size=3, steep=1): # transform dict to series d_series = pd.Series(data_dict) + logging.debug("TIME SMOOTH: Dict to pd series: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + # get data frame d_frame = self.dataframe_list[queue_no] @@ -107,21 +123,266 @@ def trailing_moving_average(self, data_dict, queue_no, window_size=3, steep=1): # put our data frame back for next time self.dataframe_list[queue_no] = d_frame + logging.debug("TIME SMOOTH: Insert pd series into dataframe: {}" + .format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + # use softmax-like function to smooth smooth_data = d_frame.apply(self.softmax_smooth, args=(steep,)) # axis=1, + logging.debug("TIME SMOOTH: Smooth data: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + # apply AU multiplier if queue_no == 0: - print("\n\n") - print(type(smooth_data)) - print(smooth_data) smooth_data = smooth_data * self.multiplier - print() - print(smooth_data) - # sys.exit() + + logging.debug("TIME SMOOTH: Multiplier: {}".format((time_hns() - time_now) / 1000000)) + # time_now = time_hns() return smooth_data.to_dict() + # def softmax_prep(self, row, steep): + # self.n_array = np.arange(1, row.shape[0]+1) + # self.steep = steep + # print(f"n_array: {self.n_array}") + # self.denominator = np.exp(-steep * self.n_array) + + def softmax_numerator(self, row, n_array, steep=1): + # print(f"row: {row}") + # row = row.flatten() + # print(f"row: {row}") + # n_iter = iter() + # n_list = np.array(range(row.shape[0])) + # print(f"n_list: {n_list}") + # n_array = np.arange(1, row.shape[0] + 1) + # print(f"n_array: {n_array}") + + # steep_array = np.full(row.shape[0], -steep) + # steep_array = n_array * -steep + # print(steep_array) + + # math.exp(-steep * n) * x + # numerator += math.exp(-steep * n_list) * row + # numerator = sum(math.exp(-steep * n_list) * row) + + # numerator = math.exp(steep_array * n_array) # * row + numerator = np.sum(np.exp(-steep * n_array) * row) + # print(numerator) + + return numerator + + # smoothing function similar to softmax + def softmax_smooth2(self, arr_2d, steep): + # matrix: numpy matrix + # steep: close to 0 means taking average, high steep means only looking at new data + + logging.debug("SMOOTHING TIME!") + + # sum_0_n(e^(-steepness*n) x_n) / sum_0_n(e^(-steepness*n)) + + time_now = time_hns() + + # print(arr_2d.shape) + n_array = np.arange(1, arr_2d.shape[0] + 1) + numerator = np.apply_along_axis(self.softmax_numerator, 0, arr_2d, n_array, steep) + # print(numerator) + denominator = np.sum(np.exp(-steep * n_array)) + + # smooth_array = np.divide(numerator, denominator) + smooth_array = numerator / denominator + + logging.debug("\t\tTIME SMOOTH: smooth 2d array: {}".format((time_hns() - time_now) / 1000000)) + + # # sum_0_n(e^(-steepness*n) x_n) / sum_0_n(e^(-steepness*n)) + # numerator = 0 + # denominator = 0 + # for n, x in enumerate(series): # reversed() + # numerator += math.exp(-steep * n) * x + # denominator += math.exp(-steep * n) # TODO calculate once + # + # # print(f"numerator: {numerator}") + # # print(f"denominator: {denominator}") + # smooth = numerator / denominator + # # print(f"smooth: {smooth}\n") + + return smooth_array + + # use window of size 'window_size' data to smooth; window=1 is no smoothing; no pandas speed up + def trailing_moving_average2(self, data_dict, queue_no, window_size=3, steep=1): + # data_dict: json formatted string containing data + # queue_no: which data history should be used + # trail: how many previous dicts should be remembered + + # measure time + time_begin = time_hns() + time_now = time_begin + + # no smoothing + if window_size <= 1: + return data_dict + + else: + logging.debug("Window size bigger than 1") + # print(data_dict) + logging.debug(f"len data_dict:{len(data_dict)}") + array = np.fromiter(data_dict.values(), dtype=float, count=len(data_dict)) # , count=len(data_dict) + # print(array) + array = np.reshape(array, (-1, len(array))) + + logging.debug("\t\tTIME SMOOTH: dict to array: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + + # create a new queue to store a new type of data when no queue exist yet + if len(self.data_list) <= queue_no: + logging.debug("smooth 2d array") + # if not smooth_matrix.any(): + # self.smooth_matrix = array + + # self.data_list.append(np.asmatrix(array)) + # array_2d = np.reshape(array, (-1, len(array))) + self.data_list.append(array) + # smooth_2d_array = array + + # TODO call calculate denominator + + # values back into dict + data_dict = dict(zip(data_dict.keys(), array.flatten())) + return data_dict + + # not reached window_size yet + else: + logging.debug("queue exists") + smooth_2d_array = self.data_list[queue_no] + logging.debug("smooth_2d_array shape: {}".format(smooth_2d_array.shape)) + + # matrix not yet window size + if self.data_list[queue_no].shape[0] <= window_size: + # add new array on top + smooth_2d_array = np.concatenate((array, smooth_2d_array), axis=0) + else: + # slower; drop last row and put new array above + # smooth_2d_array = np.concatenate((array, smooth_2d_array[:-1, :]), axis=0) + + # faster; replace oldest (lowest) array and shift new below row to top + smooth_2d_array[-1] = array + smooth_2d_array = np.roll(smooth_2d_array, 1, axis=0) + + logging.debug("stacked") + logging.debug(smooth_2d_array) + logging.debug("\n\n\n") + + # store for next message + self.data_list[queue_no] = smooth_2d_array + + logging.debug("\t\tTIME SMOOTH: stack array: {}".format((time_hns() - time_now) / 1000000)) + time_now = time_hns() + + logging.debug("Smooth matrix") + + # matrix to smoothed array + # TODO function + data_smoothed = self.softmax_smooth2(smooth_2d_array, steep) + + # values back into dict + data_dict = dict(zip(data_dict.keys(), data_smoothed)) + + logging.debug("\t\tTIME SMOOTH: array to dict: {}\n\n".format((time_hns() - time_now) / 1000000)) + # time_now = time.time_ns() + + return data_dict + + # first message + # if not self.smooth_AU: + # print("\nNot smooth AU") + # # arrays = {'names': np.array(list(data_dict.keys()), dtype=str), + # # 'values': np.array(list(data_dict.values()), dtype=float)} + # # array = np.array(list(data_dict.values()), dtype=float) + # + # self.smooth_AU = np.fromiter(data_dict.items(), dtype='S4') + # print(self.smooth_matrix) + # + # print(f"\t\tTIME SMOOTH: Dict to array: {(time.time_ns() - time_now) / 1000000}\n\n") + # time_now = time.time_ns() + + # sys.exit("smooth matrix: {}".format(self.smooth_matrix)) + + # # create a new queue to store a new type of data when no queue exist yet + # elif len(self.dataframe_list) <= queue_no: + # # convert series to data frame + # # d_frame = d_series.to_frame() + # # use labels as column names; switch index with columns + # # d_frame = d_frame.transpose() + # + # print(data_dict) + # d_frame = pd.DataFrame.from_dict(data_dict, orient='index') + # d_frame = d_frame.transpose() + # # d_frame = pd.DataFrame.from_dict(list(data_dict.items())) + # print(d_frame) + # + # # add calculated denominator as meta-data + # # d_frame.steep = steep + # + # print("Add new queue") + # self.dataframe_list.append(d_frame) + # + # print(f"TIME SMOOTH: Dict to pd dataframe: {(time.time_ns() - time_now) / 1000000}") + # time_now = time.time_ns() + # + # # return data frame in json format + # return data_dict + # + # # use [trail] previous data dicts for moving average + # else: + # # transform dict to series + # d_series = pd.Series(data_dict) + # + # print(f"TIME SMOOTH: Dict to pd series: {(time.time_ns() - time_now) / 1000000}") + # time_now = time.time_ns() + # + # # get data frame + # d_frame = self.dataframe_list[queue_no] + # + # # add data series to data frame at first postion + # # d_frame = d_frame.append(d_series, ignore_index=True) # , ignore_index=True + # d_frame.loc[-1] = d_series # adding a row + # d_frame.index = d_frame.index + 1 # shifting index + # d_frame = d_frame.sort_index() # sorting by index + # + # # drop row when row count longer than trail + # if d_frame.shape[0] > window_size: + # # drop first row (frame) + # # d_frame.drop(d_frame.index[0], inplace=True) + # # drop last row (oldest frame) + # d_frame.drop(d_frame.tail(1).index, inplace=True) + # + # # put our data frame back for next time + # self.dataframe_list[queue_no] = d_frame + # + # print(f"TIME SMOOTH: Insert pd series into dataframe: {(time.time_ns() - time_now) / 1000000}") + # time_now = time.time_ns() + # + # # use softmax-like function to smooth + # smooth_data = d_frame.apply(self.softmax_smooth, args=(steep,)) # axis=1, + # + # print(f"TIME SMOOTH: Smooth data: {(time.time_ns() - time_now) / 1000000}") + # time_now = time.time_ns() + # + # # apply AU multiplier + # if queue_no == 0: + # # print("\n\n") + # # print(type(smooth_data)) + # # print(smooth_data) + # smooth_data = smooth_data * self.multiplier + # # print() + # # print(smooth_data) + # # sys.exit() + # + # print(f"TIME SMOOTH: Multiplier: {(time.time_ns() - time_now) / 1000000}") + # # time_now = time.time_ns() + # + # return smooth_data.to_dict() + if __name__ == '__main__': print("Don't run this module standalone") diff --git a/modules/test_msg/main.py b/modules/test_msg/main.py index 66f6e51..e82172d 100644 --- a/modules/test_msg/main.py +++ b/modules/test_msg/main.py @@ -28,7 +28,8 @@ class Messages(FACSvatarZeroMQ): async def msg_sub(self): # keep listening to all published message on topic 'facs' while True: - msg = await self.sub_socket.recv_multipart() + # key, timestamp, data = await self.sub_socket.sub() + msg = await self.sub_socket.socket.recv_multipart() # raw data print("message received: {}".format(msg)) async def msg_pub(self): diff --git a/openface/MainWindow.xaml.cs b/openface/MainWindow.xaml.cs index 8a21cf1..c054af7 100755 --- a/openface/MainWindow.xaml.cs +++ b/openface/MainWindow.xaml.cs @@ -1,1287 +1,1298 @@ -/////////////////////////////////////////////////////////////////////////////// -// Copyright (C) 2017, Carnegie Mellon University and University of Cambridge, -// all rights reserved. -// -// ACADEMIC OR NON-PROFIT ORGANIZATION NONCOMMERCIAL RESEARCH USE ONLY -// -// BY USING OR DOWNLOADING THE SOFTWARE, YOU ARE AGREEING TO THE TERMS OF THIS LICENSE AGREEMENT. -// IF YOU DO NOT AGREE WITH THESE TERMS, YOU MAY NOT USE OR DOWNLOAD THE SOFTWARE. -// -// License can be found in OpenFace-license.txt - -// * Any publications arising from the use of this software, including but -// not limited to academic journal and conference publications, technical -// reports and manuals, must cite at least one of the following works: -// -// OpenFace 2.0: Facial Behavior Analysis Toolkit -// Tadas Baltrušaitis, Amir Zadeh, Yao Chong Lim, and Louis-Philippe Morency -// in IEEE International Conference on Automatic Face and Gesture Recognition, 2018 -// -// Convolutional experts constrained local model for facial landmark detection. -// A. Zadeh, T. Baltrušaitis, and Louis-Philippe Morency, -// in Computer Vision and Pattern Recognition Workshops, 2017. -// -// Rendering of Eyes for Eye-Shape Registration and Gaze Estimation -// Erroll Wood, Tadas Baltrušaitis, Xucong Zhang, Yusuke Sugano, Peter Robinson, and Andreas Bulling -// in IEEE International. Conference on Computer Vision (ICCV), 2015 -// -// Cross-dataset learning and person-specific normalisation for automatic Action Unit detection -// Tadas Baltrušaitis, Marwa Mahmoud, and Peter Robinson -// in Facial Expression Recognition and Analysis Challenge, -// IEEE International Conference on Automatic Face and Gesture Recognition, 2015 -// -/////////////////////////////////////////////////////////////////////////////// - -/////////////////////////////////////////////////////////////////////////////// -// This file is modified by Hung-Hsuan Huang for ZeroMQ integration. -// His homepage: http://hhhuang.homelinux.com -// If there are any comments or questions, please send to hhhuang@acm.org -// To compile this file, the developer need to install the following two packages -// NetMQ and Newtonsoft.Json -// They can be download from the nuget portal site -/////////////////////////////////////////////////////////////////////////////// - -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Threading; -using System.Windows; -using System.Windows.Threading; -using System.Windows.Media.Imaging; -using System.Windows.Controls; -using Microsoft.WindowsAPICodePack.Dialogs; - -// Internal libraries -using OpenCVWrappers; -using CppInterop.LandmarkDetector; -using FaceAnalyser_Interop; -using GazeAnalyser_Interop; -using FaceDetectorInterop; -using UtilitiesOF; - -// By Huang -using NetMQ; -using NetMQ.Sockets; -using Newtonsoft.Json; -using System.Net; -using System.IO; -using System.Xml; - -namespace OpenFaceOffline -{ - // Added by Huang - public struct JsonData - { - public double timestamp; - public long frame; - public double confidence; - public struct Pose - { - public double pose_Tx; - public double pose_Ty; - public double pose_Tz; - public double pose_Rx; - public double pose_Ry; - public double pose_Rz; - } - public Pose pose; - public struct Gaze - { - public double gaze_angle_x; - public double gaze_angle_y; - public double gaze_0_x; - public double gaze_0_y; - public double gaze_0_z; - public double gaze_1_x; - public double gaze_1_y; - public double gaze_1_z; - } - public Gaze gaze; - public Dictionary au_c; - public Dictionary au_r; - } - - /// - /// Interaction logic for MainWindow.xaml - /// - public partial class MainWindow : Window - { - // By Huang - PublisherSocket pubSocket = null; - long frame_no = 0; - string topic = "openface"; - //Mode running_mode = Mode.standalone; - - // Timing for measuring FPS - #region High-Resolution Timing - static DateTime startTime; - static Stopwatch sw = new Stopwatch(); - - static MainWindow() - { - startTime = DateTime.Now; - sw.Start(); - } - - public static DateTime CurrentTime - { - get { return startTime + sw.Elapsed; } - } - #endregion - - // ----------------------------------------------------------------- - // Members - // ----------------------------------------------------------------- - - Thread processing_thread; - - // Some members for displaying the results - private WriteableBitmap latest_img; - private WriteableBitmap latest_aligned_face; - private WriteableBitmap latest_HOG_descriptor; - - // Managing the running of the analysis system - private volatile bool thread_running; - private volatile bool thread_paused = false; - // Allows for going forward in time step by step - // Useful for visualising things - private volatile int skip_frames = 0; - - FpsTracker processing_fps = new FpsTracker(); - - // For selecting webcams - CameraSelection cam_sec; - - // For tracking - FaceDetector face_detector; - FaceModelParameters face_model_params; - CLNF landmark_detector; - - // For face analysis - FaceAnalyserManaged face_analyser; - GazeAnalyserManaged gaze_analyser; - - public bool RecordAligned { get; set; } = false; // Aligned face images - public bool RecordHOG { get; set; } = false; // HOG features extracted from face images - public bool Record2DLandmarks { get; set; } = true; // 2D locations of facial landmarks (in pixels) - public bool Record3DLandmarks { get; set; } = true; // 3D locations of facial landmarks (in pixels) - public bool RecordModelParameters { get; set; } = true; // Facial shape parameters (rigid and non-rigid geometry) - public bool RecordPose { get; set; } = true; // Head pose (position and orientation) - public bool RecordAUs { get; set; } = true; // Facial action units - public bool RecordGaze { get; set; } = true; // Eye gaze - public bool RecordTracked { get; set; } = true; // Recording tracked videos or images - - // Visualisation options - public bool ShowTrackedVideo { get; set; } = true; // Showing the actual tracking - public bool ShowAppearance { get; set; } = true; // Showing appeaance features like HOG - public bool ShowGeometry { get; set; } = true; // Showing geometry features, pose, gaze, and non-rigid - public bool ShowAUs { get; set; } = true; // Showing Facial Action Units - - int image_output_size = 112; - public bool MaskAligned { get; set; } = true; // Should the aligned images be masked - - // Where the recording is done (by default in a record directory, from where the application executed) - String record_root = "./processed"; - - // Selecting which face detector will be used - public bool DetectorHaar { get; set; } = false; - public bool DetectorHOG { get; set; } = false; - public bool DetectorCNN { get; set; } = true; - - // Selecting which landmark detector will be used - public bool LandmarkDetectorCLM { get; set; } = false; - public bool LandmarkDetectorCLNF { get; set; } = false; - public bool LandmarkDetectorCECLM { get; set; } = true; - - // For AU prediction, if videos are long dynamic models should be used - public bool DynamicAUModels { get; set; } = true; - - // Camera calibration parameters - public float fx = -1, fy = -1, cx = -1, cy = -1; - - public MainWindow() - { - // added by Huang - bool bPush = false; - - string configfile_name = "config.xml"; - - FileStream stream = new FileStream(configfile_name, FileMode.Open); - XmlDocument document = new XmlDocument(); - document.Load(stream); - - string serveraddress = "localhost"; - int port = 5570; - - - XmlNodeList list = document.GetElementsByTagName("Mode"); - if (list.Count > 0 && ((XmlElement)list[0]).InnerText.ToLower().Equals("push")) - bPush = true; - list = document.GetElementsByTagName("IP"); - if (list.Count > 0) - { - serveraddress = ((XmlElement)list[0]).InnerText; - } - list = document.GetElementsByTagName("Port"); - if (list.Count > 0) - { - port = Int32.Parse(((XmlElement)list[0]).InnerText); - } - list = document.GetElementsByTagName("Topic"); - if (list.Count > 0) - { - topic = ((XmlElement)list[0]).InnerText; - } - - - String hostName = Dns.GetHostName(); - IPAddress[] addresses = Dns.GetHostAddresses(hostName); - - string myaddress = "localhost"; - - - foreach (IPAddress address in addresses) - { - if (address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) - { - myaddress = address.ToString(); - } - } - - // End of Huang's code - - InitializeComponent(); - this.DataContext = this; // For WPF data binding - - // Set the icon - Uri iconUri = new Uri("logo1.ico", UriKind.RelativeOrAbsolute); - this.Icon = BitmapFrame.Create(iconUri); - - String root = AppDomain.CurrentDomain.BaseDirectory; - - face_model_params = new FaceModelParameters(root, LandmarkDetectorCECLM, LandmarkDetectorCLNF, LandmarkDetectorCLM); - // Initialize the face detector - face_detector = new FaceDetector(face_model_params.GetHaarLocation(), face_model_params.GetMTCNNLocation()); - - // If MTCNN model not available, use HOG - if (!face_detector.IsMTCNNLoaded()) - { - FaceDetCNN.IsEnabled = false; - DetectorCNN = false; - DetectorHOG = true; - } - face_model_params.SetFaceDetector(DetectorHaar, DetectorHOG, DetectorCNN); - - landmark_detector = new CLNF(face_model_params); - - gaze_analyser = new GazeAnalyserManaged(); - - // Added by Huang - frame_no = 0; - pubSocket = new PublisherSocket(); - pubSocket.Options.SendHighWatermark = 1000; - if (bPush) - pubSocket.Connect("tcp://" + serveraddress + ":" + port); - else - pubSocket.Bind("tcp://" + myaddress + ":" + port); - // end of Huang's code - } - - // ---------------------------------------------------------- - // Actual work gets done here - - // Wrapper for processing multiple sequences - private void ProcessSequences(List filenames) - { - for (int i = 0; i < filenames.Count; ++i) - { - SequenceReader reader = new SequenceReader(filenames[i], false, fx, fy, cx, cy); - ProcessSequence(reader); - - // Before continuing to next video make sure the user did not stop the processing - if (!thread_running) - { - break; - } - } - - } - - // The main function call for processing sequences - private void ProcessSequence(SequenceReader reader) - { - Thread.CurrentThread.Priority = ThreadPriority.Highest; - - SetupFeatureExtractionMode(); - - thread_running = true; - - // Reload the face landmark detector if needed - ReloadLandmarkDetector(); - - if(!landmark_detector.isLoaded()) - { - DetectorNotFoundWarning(); - EndMode(); - thread_running = false; - return; - } - - // Set the face detector - face_model_params.SetFaceDetector(DetectorHaar, DetectorHOG, DetectorCNN); - face_model_params.optimiseForVideo(); - - // Setup the visualization - Visualizer visualizer_of = new Visualizer(ShowTrackedVideo || RecordTracked, ShowAppearance, ShowAppearance, false); - - // Initialize the face analyser - face_analyser = new FaceAnalyserManaged(AppDomain.CurrentDomain.BaseDirectory, DynamicAUModels, image_output_size, MaskAligned); - - // Reset the tracker - landmark_detector.Reset(); - - // Loading an image file - var frame = new RawImage(reader.GetNextImage()); - var gray_frame = new RawImage(reader.GetCurrentFrameGray()); - - // Setup recording - RecorderOpenFaceParameters rec_params = new RecorderOpenFaceParameters(true, reader.IsWebcam(), - Record2DLandmarks, Record3DLandmarks, RecordModelParameters, RecordPose, RecordAUs, - RecordGaze, RecordHOG, RecordTracked, RecordAligned, false, - reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), reader.GetFPS()); - - RecorderOpenFace recorder = new RecorderOpenFace(reader.GetName(), rec_params, record_root); - - // For FPS tracking - DateTime? startTime = CurrentTime; - var lastFrameTime = CurrentTime; - - // Empty image would indicate that the stream is over - while (!gray_frame.IsEmpty) - { - - if(!thread_running) - { - break; - } - - double progress = reader.GetProgress(); - - bool detection_succeeding = landmark_detector.DetectLandmarksInVideo(frame, face_model_params, gray_frame); - - // The face analysis step (for AUs and eye gaze) - face_analyser.AddNextFrame(frame, landmark_detector.CalculateAllLandmarks(), detection_succeeding, false); - - gaze_analyser.AddNextFrame(landmark_detector, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy()); - - // Only the final face will contain the details - VisualizeFeatures(frame, visualizer_of, landmark_detector.CalculateAllLandmarks(), landmark_detector.GetVisibilities(), detection_succeeding, true, false, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), progress); - - // Record an observation - RecordObservation(recorder, visualizer_of.GetVisImage(), 0, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), reader.GetTimestamp(), reader.GetFrameNumber()); - - // this line is added by Huang - SendZeroMQMessage(detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), reader.GetTimestamp()); - - - - if(RecordTracked) - { - recorder.WriteObservationTracked(); - } - - while (thread_running & thread_paused && skip_frames == 0) - { - Thread.Sleep(10); - } - - if (skip_frames > 0) - skip_frames--; - - frame = new RawImage(reader.GetNextImage()); - gray_frame = new RawImage(reader.GetCurrentFrameGray()); - - lastFrameTime = CurrentTime; - processing_fps.AddFrame(); - } - - // Finalize the recording and flush to disk - recorder.Close(); - - // Post-process the AU recordings - if(RecordAUs) - { - face_analyser.PostProcessOutputFile(recorder.GetCSVFile()); - } - - // Close the open video/webcam - reader.Close(); - - EndMode(); - - } - - private void ProcessIndividualImages(ImageReader reader) - { - // Make sure the GUI is setup appropriately - SetupFeatureExtractionMode(); - - // Indicate we will start running the thread - thread_running = true; - - // Reload the face landmark detector if needed - ReloadLandmarkDetector(); - - if (!landmark_detector.isLoaded()) - { - DetectorNotFoundWarning(); - EndMode(); - thread_running = false; - return; - } - - // Setup the parameters optimized for working on individual images rather than sequences - face_model_params.optimiseForImages(); - - // Setup the visualization - Visualizer visualizer_of = new Visualizer(ShowTrackedVideo || RecordTracked, ShowAppearance, ShowAppearance, false); - - // Initialize the face detector if it has not been initialized yet - if (face_detector == null) - { - face_detector = new FaceDetector(face_model_params.GetHaarLocation(), face_model_params.GetMTCNNLocation()); - } - - // Initialize the face analyser - face_analyser = new FaceAnalyserManaged(AppDomain.CurrentDomain.BaseDirectory, false, image_output_size, MaskAligned); - - // Loading an image file - var frame = new RawImage(reader.GetNextImage()); - var gray_frame = new RawImage(reader.GetCurrentFrameGray()); - - // For FPS tracking - DateTime? startTime = CurrentTime; - var lastFrameTime = CurrentTime; - - // This will be false when the image is not available - while (reader.isOpened()) - { - if (!thread_running) - { - break; - } - - // Setup recording - RecorderOpenFaceParameters rec_params = new RecorderOpenFaceParameters(false, false, - Record2DLandmarks, Record3DLandmarks, RecordModelParameters, RecordPose, RecordAUs, - RecordGaze, RecordHOG, RecordTracked, RecordAligned, true, - reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), 0); - - RecorderOpenFace recorder = new RecorderOpenFace(reader.GetName(), rec_params, record_root); - - // Detect faces here and return bounding boxes - List face_detections = new List(); - List confidences = new List(); - if(DetectorHOG) - { - face_detector.DetectFacesHOG(face_detections, gray_frame, confidences); - } - else if(DetectorCNN) - { - face_detector.DetectFacesMTCNN(face_detections, frame, confidences); - } - else if(DetectorHaar) - { - face_detector.DetectFacesHaar(face_detections, gray_frame, confidences); - } - - // For visualization - double progress = reader.GetProgress(); - - for (int i = 0; i < face_detections.Count; ++i) - { - bool detection_succeeding = landmark_detector.DetectFaceLandmarksInImage(frame, face_detections[i], face_model_params, gray_frame); - - var landmarks = landmark_detector.CalculateAllLandmarks(); - - // Predict action units - var au_preds = face_analyser.PredictStaticAUsAndComputeFeatures(frame, landmarks); - - // Predic eye gaze - gaze_analyser.AddNextFrame(landmark_detector, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy()); - - // Only the final face will contain the details - VisualizeFeatures(frame, visualizer_of, landmarks, landmark_detector.GetVisibilities(), detection_succeeding, i == 0, true, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), progress); - - // Record an observation - RecordObservation(recorder, visualizer_of.GetVisImage(), i, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), 0, 0); - - // This line is added by Huang - SendZeroMQMessage(detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), 0); - } - - frame = new RawImage(reader.GetNextImage()); - gray_frame = new RawImage(reader.GetCurrentFrameGray()); - - // Write out the tracked image - if(RecordTracked) - { - recorder.WriteObservationTracked(); - } - - // Do not cary state accross images - landmark_detector.Reset(); - face_analyser.Reset(); - recorder.Close(); - - lastFrameTime = CurrentTime; - processing_fps.AddFrame(); - - // TODO how to report errors from the reader here? exceptions? logging? Problem for future versions? - } - - EndMode(); - - } - - // If the landmark detector model changed need to reload it - private void ReloadLandmarkDetector() - { - bool reload = false; - if (face_model_params.IsCECLM() && !LandmarkDetectorCECLM) - { - reload = true; - } - else if(face_model_params.IsCLNF() && !LandmarkDetectorCLNF) - { - reload = true; - } - else if (face_model_params.IsCLM() && !LandmarkDetectorCLM) - { - reload = true; - } - - if(reload) - { - String root = AppDomain.CurrentDomain.BaseDirectory; - - face_model_params = new FaceModelParameters(root, LandmarkDetectorCECLM, LandmarkDetectorCLNF, LandmarkDetectorCLM); - landmark_detector = new CLNF(face_model_params); - } - } - - private void DetectorNotFoundWarning() - { - string messageBoxText = "Could not open the landmark detector model file. For instructions of how to download them, see https://github.com/TadasBaltrusaitis/OpenFace/wiki/Model-download"; - string caption = "Model file not found or corrupt"; - MessageBoxButton button = MessageBoxButton.OK; - MessageBoxImage icon = MessageBoxImage.Warning; - - // Display message box - System.Windows.MessageBox.Show(messageBoxText, caption, button, icon); - - } - - private void RecordObservation(RecorderOpenFace recorder, RawImage vis_image, int face_id, bool success, float fx, float fy, float cx, float cy, double timestamp, int frame_number) - { - - recorder.SetObservationTimestamp(timestamp); - - double confidence = landmark_detector.GetConfidence(); - - List pose = new List(); - landmark_detector.GetPose(pose, fx, fy, cx, cy); - recorder.SetObservationPose(pose); - - List> landmarks_2D = landmark_detector.CalculateAllLandmarks(); - List> landmarks_3D = landmark_detector.Calculate3DLandmarks(fx, fy, cx, cy); - List global_params = landmark_detector.GetRigidParams(); - List local_params = landmark_detector.GetNonRigidParams(); - - recorder.SetObservationLandmarks(landmarks_2D, landmarks_3D, global_params, local_params, confidence, success); - - var gaze = gaze_analyser.GetGazeCamera(); - var gaze_angle = gaze_analyser.GetGazeAngle(); - - var landmarks_2d_eyes = landmark_detector.CalculateAllEyeLandmarks(); - var landmarks_3d_eyes = landmark_detector.CalculateAllEyeLandmarks3D(fx, fy, cx, cy); - recorder.SetObservationGaze(gaze.Item1, gaze.Item2, gaze_angle, landmarks_2d_eyes, landmarks_3d_eyes); - - var au_regs = face_analyser.GetCurrentAUsReg(); - var au_classes = face_analyser.GetCurrentAUsClass(); - recorder.SetObservationActionUnits(au_regs, au_classes); - - recorder.SetObservationFaceID(face_id); - recorder.SetObservationFrameNumber(frame_number); - - recorder.SetObservationFaceAlign(face_analyser.GetLatestAlignedFace()); - - var hog_feature = face_analyser.GetLatestHOGFeature(); - recorder.SetObservationHOG(success, hog_feature, face_analyser.GetHOGRows(), face_analyser.GetHOGCols(), face_analyser.GetHOGChannels()); - - recorder.SetObservationVisualization(vis_image); - - recorder.WriteObservation(); - - - } - - // added by Huang - private void SendZeroMQMessage(bool success, float fx, float fy, float cx, float cy, double openface_timestamp) - { - Tuple gaze_angle = new Tuple(0, 0); - List pose = new List(); - List non_rigid_params = landmark_detector.GetNonRigidParams(); - - - - NetMQMessage output_message = new NetMQMessage(); - output_message.Append(topic); - - JsonData json_data = new JsonData(); - - json_data.frame = frame_no++; - - DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); - TimeSpan difference = DateTime.UtcNow - origin; - output_message.Append((long)difference.TotalMilliseconds); - - json_data.timestamp = openface_timestamp; - - double confidence = landmark_detector.GetConfidence(); - if (confidence < 0) - confidence = 0; - else if (confidence > 1) - confidence = 1; - json_data.confidence = confidence; - - pose = new List(); - landmark_detector.GetPose(pose, fx, fy, cx, cy); - - json_data.pose.pose_Tx = pose[0]; - json_data.pose.pose_Ty = pose[1]; - json_data.pose.pose_Tz = pose[2]; - json_data.pose.pose_Rx = pose[3]; - json_data.pose.pose_Ry = pose[4]; - json_data.pose.pose_Rz = pose[5]; - - gaze_angle = gaze_analyser.GetGazeAngle(); - var gaze = gaze_analyser.GetGazeCamera(); - - json_data.gaze.gaze_angle_x = gaze_angle.Item1; - json_data.gaze.gaze_angle_y = gaze_angle.Item2; - json_data.gaze.gaze_0_x = gaze.Item1.Item1; - json_data.gaze.gaze_0_y = gaze.Item1.Item2; - json_data.gaze.gaze_0_z = gaze.Item1.Item3; - json_data.gaze.gaze_1_x = gaze.Item2.Item1; - json_data.gaze.gaze_1_y = gaze.Item2.Item2; - json_data.gaze.gaze_1_z = gaze.Item2.Item3; - - json_data.au_c = face_analyser.GetCurrentAUsClass(); - - Dictionary au_regs = face_analyser.GetCurrentAUsReg(); - json_data.au_r = new Dictionary(); - foreach (KeyValuePair au_reg in au_regs) - { - json_data.au_r[au_reg.Key] = au_reg.Value / 5.0; - if (json_data.au_r[au_reg.Key] < 0) - json_data.au_r[au_reg.Key] = 0; - - if (json_data.au_r[au_reg.Key] > 1) - json_data.au_r[au_reg.Key] = 1; - } - - string json_string = JsonConvert.SerializeObject(json_data); - output_message.Append(json_string); - pubSocket.SendMultipartMessage(output_message); - - } - - private void VisualizeFeatures(RawImage frame, Visualizer visualizer, List> landmarks, List visibilities, bool detection_succeeding, - bool new_image, bool multi_face, float fx, float fy, float cx, float cy, double progress) - { - - List> lines = null; - List> eye_landmarks = null; - List> gaze_lines = null; - Tuple gaze_angle = new Tuple(0, 0); - - List pose = new List(); - landmark_detector.GetPose(pose, fx, fy, cx, cy); - List non_rigid_params = landmark_detector.GetNonRigidParams(); - - double confidence = landmark_detector.GetConfidence(); - - if (confidence < 0) - confidence = 0; - else if (confidence > 1) - confidence = 1; - - double scale = landmark_detector.GetRigidParams()[0]; - - // Helps with recording and showing the visualizations - if (new_image) - { - visualizer.SetImage(frame, fx, fy, cx, cy); - } - visualizer.SetObservationHOG(face_analyser.GetLatestHOGFeature(), face_analyser.GetHOGRows(), face_analyser.GetHOGCols()); - visualizer.SetObservationLandmarks(landmarks, confidence, visibilities); - visualizer.SetObservationPose(pose, confidence); - visualizer.SetObservationGaze(gaze_analyser.GetGazeCamera().Item1, gaze_analyser.GetGazeCamera().Item2, landmark_detector.CalculateAllEyeLandmarks(), landmark_detector.CalculateAllEyeLandmarks3D(fx, fy, cx, cy), confidence); - - eye_landmarks = landmark_detector.CalculateVisibleEyeLandmarks(); - lines = landmark_detector.CalculateBox(fx, fy, cx, cy); - - gaze_lines = gaze_analyser.CalculateGazeLines(fx, fy, cx, cy); - gaze_angle = gaze_analyser.GetGazeAngle(); - - // Visualisation (as a separate function) - Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 0, 200), (Action)(() => - { - if (ShowAUs) - { - var au_classes = face_analyser.GetCurrentAUsClass(); - var au_regs = face_analyser.GetCurrentAUsReg(); - - auClassGraph.Update(au_classes); - - var au_regs_scaled = new Dictionary(); - foreach (var au_reg in au_regs) - { - au_regs_scaled[au_reg.Key] = au_reg.Value / 5.0; - if (au_regs_scaled[au_reg.Key] < 0) - au_regs_scaled[au_reg.Key] = 0; - - if (au_regs_scaled[au_reg.Key] > 1) - au_regs_scaled[au_reg.Key] = 1; - } - auRegGraph.Update(au_regs_scaled); - } - - if (ShowGeometry) - { - int yaw = (int)(pose[4] * 180 / Math.PI + 0.5); - int roll = (int)(pose[5] * 180 / Math.PI + 0.5); - int pitch = (int)(pose[3] * 180 / Math.PI + 0.5); - - YawLabel.Content = yaw + "°"; - RollLabel.Content = roll + "°"; - PitchLabel.Content = pitch + "°"; - - XPoseLabel.Content = (int)pose[0] + " mm"; - YPoseLabel.Content = (int)pose[1] + " mm"; - ZPoseLabel.Content = (int)pose[2] + " mm"; - - nonRigidGraph.Update(non_rigid_params); - - // Update eye gaze - String x_angle = String.Format("{0:F0}°", gaze_angle.Item1 * (180.0 / Math.PI)); - String y_angle = String.Format("{0:F0}°", gaze_angle.Item2 * (180.0 / Math.PI)); - GazeXLabel.Content = x_angle; - GazeYLabel.Content = y_angle; - } - - if (ShowTrackedVideo) - { - if (new_image) - { - latest_img = frame.CreateWriteableBitmap(); - overlay_image.Clear(); - } - - frame.UpdateWriteableBitmap(latest_img); - - // Clear results from previous image - overlay_image.Source = latest_img; - overlay_image.Confidence.Add(confidence); - overlay_image.FPS = processing_fps.GetFPS(); - overlay_image.Progress = progress; - overlay_image.FaceScale.Add(scale); - - // Update results even if it is not succeeding when in multi-face mode - if(detection_succeeding || multi_face) - { - - List landmark_points = new List(); - foreach (var p in landmarks) - { - landmark_points.Add(new Point(p.Item1, p.Item2)); - } - - List eye_landmark_points = new List(); - foreach (var p in eye_landmarks) - { - eye_landmark_points.Add(new Point(p.Item1, p.Item2)); - } - - overlay_image.OverlayLines.Add(lines); - overlay_image.OverlayPoints.Add(landmark_points); - overlay_image.OverlayPointsVisibility.Add(visibilities); - overlay_image.OverlayEyePoints.Add(eye_landmark_points); - overlay_image.GazeLines.Add(gaze_lines); - } - } - - if (ShowAppearance) - { - RawImage aligned_face = face_analyser.GetLatestAlignedFace(); - RawImage hog_face = visualizer.GetHOGVis(); - - if (latest_aligned_face == null) - { - latest_aligned_face = aligned_face.CreateWriteableBitmap(); - latest_HOG_descriptor = hog_face.CreateWriteableBitmap(); - } - - aligned_face.UpdateWriteableBitmap(latest_aligned_face); - hog_face.UpdateWriteableBitmap(latest_HOG_descriptor); - - AlignedFace.Source = latest_aligned_face; - AlignedHOG.Source = latest_HOG_descriptor; - } - })); - - - } - - private void StopTracking() - { - // First complete the running of the thread - if (processing_thread != null) - { - // Tell the other thread to finish - thread_running = false; - processing_thread.Join(); - } - } - - - // ---------------------------------------------------------- - // Mode handling (image, video) - // ---------------------------------------------------------- - - // Disable GUI components that should not be active during processing - private void SetupFeatureExtractionMode() - { - Dispatcher.Invoke((Action)(() => - { - SettingsMenu.IsEnabled = false; - RecordingMenu.IsEnabled = false; - AUSetting.IsEnabled = false; - FaceDetectorMenu.IsEnabled = false; - LandmarkDetectorMenu.IsEnabled = false; - - PauseButton.IsEnabled = true; - StopButton.IsEnabled = true; - NextFiveFramesButton.IsEnabled = false; - NextFrameButton.IsEnabled = false; - })); - } - - // When the processing is done re-enable the components - private void EndMode() - { - latest_img = null; - skip_frames = 0; - - // Unpause if it's paused - if (thread_paused) - { - Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 0, 200), (Action)(() => - { - PauseButton_Click(null, null); - })); - } - - Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 1, 0), (Action)(() => - { - - SettingsMenu.IsEnabled = true; - RecordingMenu.IsEnabled = true; - AUSetting.IsEnabled = true; - FaceDetectorMenu.IsEnabled = true; - LandmarkDetectorMenu.IsEnabled = true; - - PauseButton.IsEnabled = false; - StopButton.IsEnabled = false; - NextFiveFramesButton.IsEnabled = false; - NextFrameButton.IsEnabled = false; - - // Clean up the interface itself - overlay_image.Source = null; - - auClassGraph.Update(new Dictionary()); - auRegGraph.Update(new Dictionary()); - YawLabel.Content = "0°"; - RollLabel.Content = "0°"; - PitchLabel.Content = "0°"; - - XPoseLabel.Content = "0 mm"; - YPoseLabel.Content = "0 mm"; - ZPoseLabel.Content = "0 mm"; - - nonRigidGraph.Update(new List()); - - GazeXLabel.Content = "0°"; - GazeYLabel.Content = "0°"; - - AlignedFace.Source = null; - AlignedHOG.Source = null; - - })); - } - - // ---------------------------------------------------------- - // Opening Videos/Images - // ---------------------------------------------------------- - - // Some utilities for opening images/videos and directories - private List openMediaDialog(bool images) - { - string[] image_files = new string[0]; - Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 2, 0), (Action)(() => - { - var d = new Microsoft.Win32.OpenFileDialog(); - d.Multiselect = true; - if (images) - { - d.Filter = "Image files|*.jpg;*.jpeg;*.bmp;*.png;*.gif"; - } - else - { - d.Filter = "Video files|*.avi;*.webm;*.wmv;*.mov;*.mpg;*.mpeg;*.mp4"; - } - if (d.ShowDialog(this) == true) - { - - image_files = d.FileNames; - - } - })); - List img_files_list = new List(image_files); - return img_files_list; - } - - private string openDirectory() - { - string to_return = ""; - using (var fbd = new System.Windows.Forms.FolderBrowserDialog()) - { - System.Windows.Forms.DialogResult result = fbd.ShowDialog(); - if (result == System.Windows.Forms.DialogResult.OK) - { - to_return = fbd.SelectedPath; - } - else if(!string.IsNullOrWhiteSpace(fbd.SelectedPath)) - { - string messageBoxText = "Could not open the directory."; - string caption = "Invalid directory"; - MessageBoxButton button = MessageBoxButton.OK; - MessageBoxImage icon = MessageBoxImage.Warning; - - // Display message box - System.Windows.MessageBox.Show(messageBoxText, caption, button, icon); - - } - } - return to_return; - } - - private void imageSequenceFileOpenClick(object sender, RoutedEventArgs e) - { - // First clean up existing tracking - StopTracking(); - - string directory = openDirectory(); - if (!string.IsNullOrWhiteSpace(directory)) - { - SequenceReader reader = new SequenceReader(directory, true, fx, fy, cx, cy); - - processing_thread = new Thread(() => ProcessSequence(reader)); - processing_thread.Name = "Image sequence processing"; - processing_thread.Start(); - } - - } - - private void videoFileOpenClick(object sender, RoutedEventArgs e) - { - // First clean up existing tracking - StopTracking(); - - var video_files = openMediaDialog(false); - processing_thread = new Thread(() => ProcessSequences(video_files)); - processing_thread.Name = "Video processing"; - processing_thread.Start(); - - } - - // Selecting one or more images in a directory - private void individualImageFilesOpenClick(object sender, RoutedEventArgs e) - { - // First clean up existing tracking - StopTracking(); - - var image_files = openMediaDialog(true); - - if(image_files.Count > 0) - { - ImageReader reader = new ImageReader(image_files, fx, fy, cx, cy); - - processing_thread = new Thread(() => ProcessIndividualImages(reader)); - processing_thread.Start(); - } - } - - // Selecting a directory containing images - private void individualImageDirectoryOpenClick(object sender, RoutedEventArgs e) - { - - // First clean up existing tracking - StopTracking(); - - string directory = openDirectory(); - if(!string.IsNullOrWhiteSpace(directory)) - { - ImageReader reader = new ImageReader(directory, fx, fy, cx, cy); - - processing_thread = new Thread(() => ProcessIndividualImages(reader)); - processing_thread.Start(); - } - } - - private void openWebcamClick(object sender, RoutedEventArgs e) - { - StopTracking(); - - // If camera selection has already been done, no need to re-populate the list as it is quite slow - if (cam_sec == null) - { - cam_sec = new CameraSelection(); - } - else - { - cam_sec = new CameraSelection(cam_sec.cams); - cam_sec.Visibility = System.Windows.Visibility.Visible; - } - - // Set the icon - Uri iconUri = new Uri("logo1.ico", UriKind.RelativeOrAbsolute); - cam_sec.Icon = BitmapFrame.Create(iconUri); - - if (!cam_sec.no_cameras_found) - cam_sec.ShowDialog(); - - if (cam_sec.camera_selected) - { - int cam_id = cam_sec.selected_camera.Item1; - int width = cam_sec.selected_camera.Item2; - int height = cam_sec.selected_camera.Item3; - - SequenceReader reader = new SequenceReader(cam_id, width, height, fx, fy, cx, cy); - - processing_thread = new Thread(() => ProcessSequence(reader)); - processing_thread.Name = "Webcam processing"; - processing_thread.Start(); - - } - } - - - // -------------------------------------------------------- - // Button handling - // -------------------------------------------------------- - - // Cleanup stuff when closing the window - private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) - { - if (processing_thread != null) - { - // Stop capture and tracking - thread_running = false; - processing_thread.Join(); - } - // Added by Huang - pubSocket.Close(); - } - - // Stopping the tracking - private void StopButton_Click(object sender, RoutedEventArgs e) - { - if (processing_thread != null) - { - // Stop capture and tracking - thread_paused = false; - thread_running = false; - // Let the processing thread finish - processing_thread.Join(); - - // Clean up the interface - EndMode(); - } - } - - private void PauseButton_Click(object sender, RoutedEventArgs e) - { - if (processing_thread != null) - { - // Stop capture and tracking - thread_paused = !thread_paused; - - NextFrameButton.IsEnabled = thread_paused; - NextFiveFramesButton.IsEnabled = thread_paused; - - if (thread_paused) - { - PauseButton.Content = "Resume"; - } - else - { - PauseButton.Content = "Pause"; - } - } - } - - private void SkipButton_Click(object sender, RoutedEventArgs e) - { - if (sender.Equals(NextFrameButton)) - { - skip_frames += 1; - } - else if (sender.Equals(NextFiveFramesButton)) - { - skip_frames += 5; - } - } - - - private void VisualisationChange(object sender, RoutedEventArgs e) - { - // Collapsing or restoring the windows here - if (!ShowTrackedVideo) - { - VideoBorder.Visibility = System.Windows.Visibility.Collapsed; - MainGrid.ColumnDefinitions[0].Width = new GridLength(0, GridUnitType.Star); - } - else - { - VideoBorder.Visibility = System.Windows.Visibility.Visible; - MainGrid.ColumnDefinitions[0].Width = new GridLength(2.1, GridUnitType.Star); - } - - if (!ShowAppearance) - { - AppearanceBorder.Visibility = System.Windows.Visibility.Collapsed; - MainGrid.ColumnDefinitions[1].Width = new GridLength(0, GridUnitType.Star); - } - else - { - AppearanceBorder.Visibility = System.Windows.Visibility.Visible; - MainGrid.ColumnDefinitions[1].Width = new GridLength(0.8, GridUnitType.Star); - } - - // Collapsing or restoring the windows here - if (!ShowGeometry) - { - GeometryBorder.Visibility = System.Windows.Visibility.Collapsed; - MainGrid.ColumnDefinitions[2].Width = new GridLength(0, GridUnitType.Star); - } - else - { - GeometryBorder.Visibility = System.Windows.Visibility.Visible; - MainGrid.ColumnDefinitions[2].Width = new GridLength(1.0, GridUnitType.Star); - } - - // Collapsing or restoring the windows here - if (!ShowAUs) - { - ActionUnitBorder.Visibility = System.Windows.Visibility.Collapsed; - MainGrid.ColumnDefinitions[3].Width = new GridLength(0, GridUnitType.Star); - } - else - { - ActionUnitBorder.Visibility = System.Windows.Visibility.Visible; - MainGrid.ColumnDefinitions[3].Width = new GridLength(1.6, GridUnitType.Star); - } - - } - - private void setOutputImageSize_Click(object sender, RoutedEventArgs e) - { - - NumberEntryWindow number_entry_window = new NumberEntryWindow(image_output_size); - number_entry_window.Icon = this.Icon; - - number_entry_window.WindowStartupLocation = WindowStartupLocation.CenterScreen; - - if (number_entry_window.ShowDialog() == true) - { - image_output_size = number_entry_window.OutputInt; - } - } - - private void ExclusiveMenuItem_Click(object sender, RoutedEventArgs e) - { - // Disable all other items but this one - MenuItem parent = (MenuItem)((MenuItem)sender).Parent; - foreach (var me in parent.Items) - { - ((MenuItem)me).IsChecked = false; - } - ((MenuItem)sender).IsChecked = true; - - } - - private void setCameraParameters_Click(object sender, RoutedEventArgs e) - { - CameraParametersEntry camera_params_entry_window = new CameraParametersEntry(fx, fy, cx, cy); - camera_params_entry_window.Icon = this.Icon; - - camera_params_entry_window.WindowStartupLocation = WindowStartupLocation.CenterScreen; - - if (camera_params_entry_window.ShowDialog() == true) - { - fx = camera_params_entry_window.Fx; - fy = camera_params_entry_window.Fy; - cx = camera_params_entry_window.Cx; - cy = camera_params_entry_window.Cy; - } - } - - // Making sure only one radio button is selected - private void MenuItemWithRadioButtons_Click(object sender, System.Windows.RoutedEventArgs e) - { - MenuItem mi = sender as MenuItem; - if (mi != null) - { - RadioButton rb = mi.Icon as RadioButton; - if (rb != null) - { - rb.IsChecked = true; - } - } - } - - private void OutputLocationItem_Click(object sender, RoutedEventArgs e) - { - var dlg = new CommonOpenFileDialog(); - dlg.Title = "Select output directory"; - dlg.IsFolderPicker = true; - dlg.AllowNonFileSystemItems = false; - dlg.EnsureFileExists = true; - dlg.EnsurePathExists = true; - dlg.EnsureReadOnly = false; - dlg.EnsureValidNames = true; - dlg.Multiselect = false; - dlg.ShowPlacesList = true; - - if (dlg.ShowDialog() == CommonFileDialogResult.Ok) - { - var folder = dlg.FileName; - record_root = folder; - } - } - - } - -} +/////////////////////////////////////////////////////////////////////////////// +// Copyright (C) 2017, Carnegie Mellon University and University of Cambridge, +// all rights reserved. +// +// ACADEMIC OR NON-PROFIT ORGANIZATION NONCOMMERCIAL RESEARCH USE ONLY +// +// BY USING OR DOWNLOADING THE SOFTWARE, YOU ARE AGREEING TO THE TERMS OF THIS LICENSE AGREEMENT. +// IF YOU DO NOT AGREE WITH THESE TERMS, YOU MAY NOT USE OR DOWNLOAD THE SOFTWARE. +// +// License can be found in OpenFace-license.txt + +// * Any publications arising from the use of this software, including but +// not limited to academic journal and conference publications, technical +// reports and manuals, must cite at least one of the following works: +// +// OpenFace 2.0: Facial Behavior Analysis Toolkit +// Tadas Baltrušaitis, Amir Zadeh, Yao Chong Lim, and Louis-Philippe Morency +// in IEEE International Conference on Automatic Face and Gesture Recognition, 2018 +// +// Convolutional experts constrained local model for facial landmark detection. +// A. Zadeh, T. Baltrušaitis, and Louis-Philippe Morency, +// in Computer Vision and Pattern Recognition Workshops, 2017. +// +// Rendering of Eyes for Eye-Shape Registration and Gaze Estimation +// Erroll Wood, Tadas Baltrušaitis, Xucong Zhang, Yusuke Sugano, Peter Robinson, and Andreas Bulling +// in IEEE International. Conference on Computer Vision (ICCV), 2015 +// +// Cross-dataset learning and person-specific normalisation for automatic Action Unit detection +// Tadas Baltrušaitis, Marwa Mahmoud, and Peter Robinson +// in Facial Expression Recognition and Analysis Challenge, +// IEEE International Conference on Automatic Face and Gesture Recognition, 2015 +// +/////////////////////////////////////////////////////////////////////////////// + +/////////////////////////////////////////////////////////////////////////////// +// This file is modified by Hung-Hsuan Huang for ZeroMQ integration. +// His homepage: http://hhhuang.homelinux.com +// If there are any comments or questions, please send to hhhuang@acm.org +// To compile this file, the developer need to install the following two packages +// NetMQ and Newtonsoft.Json +// They can be download from the nuget portal site +/////////////////////////////////////////////////////////////////////////////// + +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Threading; +using System.Windows; +using System.Windows.Threading; +using System.Windows.Media.Imaging; +using System.Windows.Controls; +using Microsoft.WindowsAPICodePack.Dialogs; + +// Internal libraries +using OpenCVWrappers; +using CppInterop.LandmarkDetector; +using FaceAnalyser_Interop; +using GazeAnalyser_Interop; +using FaceDetectorInterop; +using UtilitiesOF; + +// By Huang +using NetMQ; +using NetMQ.Sockets; +using Newtonsoft.Json; +using System.Net; +using System.IO; +using System.Xml; + +namespace OpenFaceOffline +{ + // Added by Huang + public struct JsonData + { + public double timestamp; + public long frame; + public double confidence; + public struct Pose + { + public double pose_Tx; + public double pose_Ty; + public double pose_Tz; + public double pose_Rx; + public double pose_Ry; + public double pose_Rz; + } + public Pose pose; + public struct Gaze + { + public double gaze_angle_x; + public double gaze_angle_y; + public double gaze_0_x; + public double gaze_0_y; + public double gaze_0_z; + public double gaze_1_x; + public double gaze_1_y; + public double gaze_1_z; + } + public Gaze gaze; + public Dictionary au_c; + public Dictionary au_r; + } + /// + /// Interaction logic for MainWindow.xaml + /// + public partial class MainWindow : Window + { + // By Huang + PublisherSocket pubSocket = null; + long frame_no = 0; + string topic = "openface"; + //Mode running_mode = Mode.standalone; + + // Timing for measuring FPS + #region High-Resolution Timing + static DateTime startTime; + static Stopwatch sw = new Stopwatch(); + + static MainWindow() + { + startTime = DateTime.Now; + sw.Start(); + } + + public static DateTime CurrentTime + { + get { return startTime + sw.Elapsed; } + } + #endregion + + // ----------------------------------------------------------------- + // Members + // ----------------------------------------------------------------- + + Thread processing_thread; + + // Some members for displaying the results + private WriteableBitmap latest_img; + private WriteableBitmap latest_aligned_face; + private WriteableBitmap latest_HOG_descriptor; + + // Managing the running of the analysis system + private volatile bool thread_running; + private volatile bool thread_paused = false; + // Allows for going forward in time step by step + // Useful for visualising things + private volatile int skip_frames = 0; + + FpsTracker processing_fps = new FpsTracker(); + + // For selecting webcams + CameraSelection cam_sec; + + // For tracking + FaceDetector face_detector; + FaceModelParameters face_model_params; + CLNF landmark_detector; + + // For face analysis + FaceAnalyserManaged face_analyser; + GazeAnalyserManaged gaze_analyser; + + public bool RecordAligned { get; set; } = false; // Aligned face images + public bool RecordHOG { get; set; } = false; // HOG features extracted from face images + public bool Record2DLandmarks { get; set; } = true; // 2D locations of facial landmarks (in pixels) + public bool Record3DLandmarks { get; set; } = true; // 3D locations of facial landmarks (in pixels) + public bool RecordModelParameters { get; set; } = true; // Facial shape parameters (rigid and non-rigid geometry) + public bool RecordPose { get; set; } = true; // Head pose (position and orientation) + public bool RecordAUs { get; set; } = true; // Facial action units + public bool RecordGaze { get; set; } = true; // Eye gaze + public bool RecordTracked { get; set; } = true; // Recording tracked videos or images + + // Visualisation options + public bool ShowTrackedVideo { get; set; } = true; // Showing the actual tracking + public bool ShowAppearance { get; set; } = true; // Showing appeaance features like HOG + public bool ShowGeometry { get; set; } = true; // Showing geometry features, pose, gaze, and non-rigid + public bool ShowAUs { get; set; } = true; // Showing Facial Action Units + + int image_output_size = 112; + public bool MaskAligned { get; set; } = true; // Should the aligned images be masked + + // Where the recording is done (by default in a record directory, from where the application executed) + String record_root = "./processed"; + + // Selecting which face detector will be used + public bool DetectorHaar { get; set; } = false; + public bool DetectorHOG { get; set; } = false; + public bool DetectorCNN { get; set; } = true; + + // Selecting which landmark detector will be used + public bool LandmarkDetectorCLM { get; set; } = false; + public bool LandmarkDetectorCLNF { get; set; } = false; + public bool LandmarkDetectorCECLM { get; set; } = true; + + // For AU prediction, if videos are long dynamic models should be used + public bool DynamicAUModels { get; set; } = true; + + // Camera calibration parameters + public float fx = -1, fy = -1, cx = -1, cy = -1; + + public MainWindow() + { + // added by Huang + bool bPush = false; + + string configfile_name = "config.xml"; + + FileStream stream = new FileStream(configfile_name, FileMode.Open); + XmlDocument document = new XmlDocument(); + document.Load(stream); + + string serveraddress = "localhost"; + int port = 5570; + + + XmlNodeList list = document.GetElementsByTagName("Mode"); + if (list.Count > 0 && ((XmlElement)list[0]).InnerText.ToLower().Equals("push")) + bPush = true; + list = document.GetElementsByTagName("IP"); + if (list.Count > 0) + { + serveraddress = ((XmlElement)list[0]).InnerText; + } + list = document.GetElementsByTagName("Port"); + if (list.Count > 0) + { + port = Int32.Parse(((XmlElement)list[0]).InnerText); + } + list = document.GetElementsByTagName("Topic"); + if (list.Count > 0) + { + topic = ((XmlElement)list[0]).InnerText; + } + + + String hostName = Dns.GetHostName(); + IPAddress[] addresses = Dns.GetHostAddresses(hostName); + + string myaddress = "localhost"; + + + foreach (IPAddress address in addresses) + { + if (address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork) + { + myaddress = address.ToString(); + } + } + + // End of Huang's code + InitializeComponent(); + this.DataContext = this; // For WPF data binding + + // Set the icon + Uri iconUri = new Uri("logo1.ico", UriKind.RelativeOrAbsolute); + this.Icon = BitmapFrame.Create(iconUri); + + String root = AppDomain.CurrentDomain.BaseDirectory; + + face_model_params = new FaceModelParameters(root, LandmarkDetectorCECLM, LandmarkDetectorCLNF, LandmarkDetectorCLM); + // Initialize the face detector + face_detector = new FaceDetector(face_model_params.GetHaarLocation(), face_model_params.GetMTCNNLocation()); + + // If MTCNN model not available, use HOG + if (!face_detector.IsMTCNNLoaded()) + { + FaceDetCNN.IsEnabled = false; + DetectorCNN = false; + DetectorHOG = true; + } + face_model_params.SetFaceDetector(DetectorHaar, DetectorHOG, DetectorCNN); + + landmark_detector = new CLNF(face_model_params); + + gaze_analyser = new GazeAnalyserManaged(); + + // Added by Huang + frame_no = 0; + pubSocket = new PublisherSocket(); + pubSocket.Options.SendHighWatermark = 1000; + if (bPush) + pubSocket.Connect("tcp://" + serveraddress + ":" + port); + else + pubSocket.Bind("tcp://" + myaddress + ":" + port); + // end of Huang's code + } + + // ---------------------------------------------------------- + // Actual work gets done here + + // Wrapper for processing multiple sequences + private void ProcessSequences(List filenames) + { + for (int i = 0; i < filenames.Count; ++i) + { + SequenceReader reader = new SequenceReader(filenames[i], false, fx, fy, cx, cy); + ProcessSequence(reader); + + // Before continuing to next video make sure the user did not stop the processing + if (!thread_running) + { + break; + } + } + + } + + // The main function call for processing sequences + private void ProcessSequence(SequenceReader reader) + { + Thread.CurrentThread.Priority = ThreadPriority.Highest; + + SetupFeatureExtractionMode(); + + thread_running = true; + + // Reload the face landmark detector if needed + ReloadLandmarkDetector(); + + if(!landmark_detector.isLoaded()) + { + DetectorNotFoundWarning(); + EndMode(); + thread_running = false; + return; + } + + // Set the face detector + face_model_params.SetFaceDetector(DetectorHaar, DetectorHOG, DetectorCNN); + face_model_params.optimiseForVideo(); + + // Setup the visualization + Visualizer visualizer_of = new Visualizer(ShowTrackedVideo || RecordTracked, ShowAppearance, ShowAppearance, false); + + // Initialize the face analyser + face_analyser = new FaceAnalyserManaged(AppDomain.CurrentDomain.BaseDirectory, DynamicAUModels, image_output_size, MaskAligned); + + // Reset the tracker + landmark_detector.Reset(); + + // Loading an image file + var frame = reader.GetNextImage(); + var gray_frame = reader.GetCurrentFrameGray(); + + // Setup recording + RecorderOpenFaceParameters rec_params = new RecorderOpenFaceParameters(true, reader.IsWebcam(), + Record2DLandmarks, Record3DLandmarks, RecordModelParameters, RecordPose, RecordAUs, + RecordGaze, RecordHOG, RecordTracked, RecordAligned, false, + reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), reader.GetFPS()); + + RecorderOpenFace recorder = new RecorderOpenFace(reader.GetName(), rec_params, record_root); + + // For FPS tracking + DateTime? startTime = CurrentTime; + var lastFrameTime = CurrentTime; + + // Empty image would indicate that the stream is over + while (!gray_frame.IsEmpty) + { + + if(!thread_running) + { + break; + } + + double progress = reader.GetProgress(); + + bool detection_succeeding = landmark_detector.DetectLandmarksInVideo(frame, face_model_params, gray_frame); + + // The face analysis step (for AUs and eye gaze) + face_analyser.AddNextFrame(frame, landmark_detector.CalculateAllLandmarks(), detection_succeeding, false); + + gaze_analyser.AddNextFrame(landmark_detector, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy()); + + // Only the final face will contain the details + VisualizeFeatures(frame, visualizer_of, landmark_detector.CalculateAllLandmarks(), landmark_detector.GetVisibilities(), detection_succeeding, true, false, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), progress); + + // Record an observation + RecordObservation(recorder, visualizer_of.GetVisImage(), 0, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), reader.GetTimestamp(), reader.GetFrameNumber()); + + // this line is added by Huang + SendZeroMQMessage(detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), reader.GetTimestamp()); + + + if(RecordTracked) + { + recorder.WriteObservationTracked(); + } + + while (thread_running & thread_paused && skip_frames == 0) + { + Thread.Sleep(10); + } + + if (skip_frames > 0) + skip_frames--; + + frame = reader.GetNextImage(); + gray_frame = reader.GetCurrentFrameGray(); + + lastFrameTime = CurrentTime; + processing_fps.AddFrame(); + } + + // Finalize the recording and flush to disk + recorder.Close(); + + // Post-process the AU recordings + if(RecordAUs) + { + face_analyser.PostProcessOutputFile(recorder.GetCSVFile()); + } + + // Close the open video/webcam + reader.Close(); + + EndMode(); + + } + + private void ProcessIndividualImages(ImageReader reader) + { + // Make sure the GUI is setup appropriately + SetupFeatureExtractionMode(); + + // Indicate we will start running the thread + thread_running = true; + + // Reload the face landmark detector if needed + ReloadLandmarkDetector(); + + if (!landmark_detector.isLoaded()) + { + DetectorNotFoundWarning(); + EndMode(); + thread_running = false; + return; + } + + // Setup the parameters optimized for working on individual images rather than sequences + face_model_params.optimiseForImages(); + + // Setup the visualization + Visualizer visualizer_of = new Visualizer(ShowTrackedVideo || RecordTracked, ShowAppearance, ShowAppearance, false); + + // Initialize the face detector if it has not been initialized yet + if (face_detector == null) + { + face_detector = new FaceDetector(face_model_params.GetHaarLocation(), face_model_params.GetMTCNNLocation()); + } + + // Initialize the face analyser + face_analyser = new FaceAnalyserManaged(AppDomain.CurrentDomain.BaseDirectory, false, image_output_size, MaskAligned); + + // Loading an image file + var frame = reader.GetNextImage(); + var gray_frame = reader.GetCurrentFrameGray(); + + // For FPS tracking + DateTime? startTime = CurrentTime; + var lastFrameTime = CurrentTime; + + // This will be false when the image is not available + while (reader.isOpened()) + { + if (!thread_running) + { + break; + } + + // Setup recording + RecorderOpenFaceParameters rec_params = new RecorderOpenFaceParameters(false, false, + Record2DLandmarks, Record3DLandmarks, RecordModelParameters, RecordPose, RecordAUs, + RecordGaze, RecordHOG, RecordTracked, RecordAligned, true, + reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), 0); + + RecorderOpenFace recorder = new RecorderOpenFace(reader.GetName(), rec_params, record_root); + + visualizer_of.SetImage(frame, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy()); + + // Detect faces here and return bounding boxes + List face_detections = new List(); + List confidences = new List(); + if(DetectorHOG) + { + face_detector.DetectFacesHOG(face_detections, gray_frame, confidences); + } + else if(DetectorCNN) + { + face_detector.DetectFacesMTCNN(face_detections, frame, confidences); + } + else if(DetectorHaar) + { + face_detector.DetectFacesHaar(face_detections, gray_frame, confidences); + } + + // For visualization + double progress = reader.GetProgress(); + + for (int i = 0; i < face_detections.Count; ++i) + { + bool detection_succeeding = landmark_detector.DetectFaceLandmarksInImage(frame, face_detections[i], face_model_params, gray_frame); + + var landmarks = landmark_detector.CalculateAllLandmarks(); + + // Predict action units + var au_preds = face_analyser.PredictStaticAUsAndComputeFeatures(frame, landmarks); + + // Predic eye gaze + gaze_analyser.AddNextFrame(landmark_detector, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy()); + + // Only the final face will contain the details + VisualizeFeatures(frame, visualizer_of, landmarks, landmark_detector.GetVisibilities(), detection_succeeding, i == 0, true, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), progress); + + // Record an observation + RecordObservation(recorder, visualizer_of.GetVisImage(), i, detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), 0, 0); + + // This line is added by Huang + SendZeroMQMessage(detection_succeeding, reader.GetFx(), reader.GetFy(), reader.GetCx(), reader.GetCy(), 0); + } + + recorder.SetObservationVisualization(visualizer_of.GetVisImage()); + + frame = reader.GetNextImage(); + gray_frame = reader.GetCurrentFrameGray(); + + // Write out the tracked image + if(RecordTracked) + { + recorder.WriteObservationTracked(); + } + + // Do not cary state accross images + landmark_detector.Reset(); + face_analyser.Reset(); + recorder.Close(); + + lastFrameTime = CurrentTime; + processing_fps.AddFrame(); + + // TODO how to report errors from the reader here? exceptions? logging? Problem for future versions? + } + + EndMode(); + + } + + // If the landmark detector model changed need to reload it + private void ReloadLandmarkDetector() + { + bool reload = false; + if (face_model_params.IsCECLM() && !LandmarkDetectorCECLM) + { + reload = true; + } + else if(face_model_params.IsCLNF() && !LandmarkDetectorCLNF) + { + reload = true; + } + else if (face_model_params.IsCLM() && !LandmarkDetectorCLM) + { + reload = true; + } + + if(reload) + { + String root = AppDomain.CurrentDomain.BaseDirectory; + + face_model_params = new FaceModelParameters(root, LandmarkDetectorCECLM, LandmarkDetectorCLNF, LandmarkDetectorCLM); + landmark_detector = new CLNF(face_model_params); + } + } + + private void DetectorNotFoundWarning() + { + string messageBoxText = "Could not open the landmark detector model file. For instructions of how to download them, see https://github.com/TadasBaltrusaitis/OpenFace/wiki/Model-download"; + string caption = "Model file not found or corrupt"; + MessageBoxButton button = MessageBoxButton.OK; + MessageBoxImage icon = MessageBoxImage.Warning; + + // Display message box + System.Windows.MessageBox.Show(messageBoxText, caption, button, icon); + + } + + private void RecordObservation(RecorderOpenFace recorder, RawImage vis_image, int face_id, bool success, float fx, float fy, float cx, float cy, double timestamp, int frame_number) + { + + recorder.SetObservationTimestamp(timestamp); + + double confidence = landmark_detector.GetConfidence(); + + List pose = new List(); + landmark_detector.GetPose(pose, fx, fy, cx, cy); + recorder.SetObservationPose(pose); + + List> landmarks_2D = landmark_detector.CalculateAllLandmarks(); + List> landmarks_3D = landmark_detector.Calculate3DLandmarks(fx, fy, cx, cy); + List global_params = landmark_detector.GetRigidParams(); + List local_params = landmark_detector.GetNonRigidParams(); + + recorder.SetObservationLandmarks(landmarks_2D, landmarks_3D, global_params, local_params, confidence, success); + + var gaze = gaze_analyser.GetGazeCamera(); + var gaze_angle = gaze_analyser.GetGazeAngle(); + + var landmarks_2d_eyes = landmark_detector.CalculateAllEyeLandmarks(); + var landmarks_3d_eyes = landmark_detector.CalculateAllEyeLandmarks3D(fx, fy, cx, cy); + recorder.SetObservationGaze(gaze.Item1, gaze.Item2, gaze_angle, landmarks_2d_eyes, landmarks_3d_eyes); + + var au_regs = face_analyser.GetCurrentAUsReg(); + var au_classes = face_analyser.GetCurrentAUsClass(); + recorder.SetObservationActionUnits(au_regs, au_classes); + + recorder.SetObservationFaceID(face_id); + recorder.SetObservationFrameNumber(frame_number); + + recorder.SetObservationFaceAlign(face_analyser.GetLatestAlignedFace()); + + var hog_feature = face_analyser.GetLatestHOGFeature(); + recorder.SetObservationHOG(success, hog_feature, face_analyser.GetHOGRows(), face_analyser.GetHOGCols(), face_analyser.GetHOGChannels()); + + recorder.SetObservationVisualization(vis_image); + + recorder.WriteObservation(); + + + } + + // added by Stef + public static long UnixTimeNowMillisec() + { + DateTime unixStart = new DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc); + long unixTimeStampInTicks = (DateTime.UtcNow - unixStart).Ticks; + long timeNowMs = unixTimeStampInTicks / (TimeSpan.TicksPerMillisecond / 10000); // 100ns + //Debug.Log(timeNowMs); + return timeNowMs; + } + + // added by Huang + private void SendZeroMQMessage(bool success, float fx, float fy, float cx, float cy, double openface_timestamp) + { + Tuple gaze_angle = new Tuple(0, 0); + List pose = new List(); + List non_rigid_params = landmark_detector.GetNonRigidParams(); + + + + NetMQMessage output_message = new NetMQMessage(); + output_message.Append(topic); + + JsonData json_data = new JsonData(); + + json_data.frame = frame_no++; + + //DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); + //TimeSpan difference = DateTime.UtcNow - origin; + //output_message.Append((long)difference.TotalMilliseconds); + output_message.Append((UnixTimeNowMillisec()).ToString()); // Changed by Stef + + json_data.timestamp = openface_timestamp; + + double confidence = landmark_detector.GetConfidence(); + if (confidence < 0) + confidence = 0; + else if (confidence > 1) + confidence = 1; + json_data.confidence = confidence; + + pose = new List(); + landmark_detector.GetPose(pose, fx, fy, cx, cy); + + json_data.pose.pose_Tx = pose[0]; + json_data.pose.pose_Ty = pose[1]; + json_data.pose.pose_Tz = pose[2]; + json_data.pose.pose_Rx = pose[3]; + json_data.pose.pose_Ry = pose[4]; + json_data.pose.pose_Rz = pose[5]; + + gaze_angle = gaze_analyser.GetGazeAngle(); + var gaze = gaze_analyser.GetGazeCamera(); + + json_data.gaze.gaze_angle_x = gaze_angle.Item1; + json_data.gaze.gaze_angle_y = gaze_angle.Item2; + json_data.gaze.gaze_0_x = gaze.Item1.Item1; + json_data.gaze.gaze_0_y = gaze.Item1.Item2; + json_data.gaze.gaze_0_z = gaze.Item1.Item3; + json_data.gaze.gaze_1_x = gaze.Item2.Item1; + json_data.gaze.gaze_1_y = gaze.Item2.Item2; + json_data.gaze.gaze_1_z = gaze.Item2.Item3; + + json_data.au_c = face_analyser.GetCurrentAUsClass(); + + Dictionary au_regs = face_analyser.GetCurrentAUsReg(); + json_data.au_r = new Dictionary(); + foreach (KeyValuePair au_reg in au_regs) + { + json_data.au_r[au_reg.Key] = au_reg.Value / 5.0; + if (json_data.au_r[au_reg.Key] < 0) + json_data.au_r[au_reg.Key] = 0; + + if (json_data.au_r[au_reg.Key] > 1) + json_data.au_r[au_reg.Key] = 1; + } + + string json_string = JsonConvert.SerializeObject(json_data); + output_message.Append(json_string); + pubSocket.SendMultipartMessage(output_message); + + } + private void VisualizeFeatures(RawImage frame, Visualizer visualizer, List> landmarks, List visibilities, bool detection_succeeding, + bool new_image, bool multi_face, float fx, float fy, float cx, float cy, double progress) + { + + List> lines = null; + List> eye_landmarks = null; + List> gaze_lines = null; + Tuple gaze_angle = new Tuple(0, 0); + + List pose = new List(); + landmark_detector.GetPose(pose, fx, fy, cx, cy); + List non_rigid_params = landmark_detector.GetNonRigidParams(); + + double confidence = landmark_detector.GetConfidence(); + + if (confidence < 0) + confidence = 0; + else if (confidence > 1) + confidence = 1; + + double scale = landmark_detector.GetRigidParams()[0]; + + // Helps with recording and showing the visualizations + if (new_image) + { + visualizer.SetImage(frame, fx, fy, cx, cy); + } + visualizer.SetObservationHOG(face_analyser.GetLatestHOGFeature(), face_analyser.GetHOGRows(), face_analyser.GetHOGCols()); + visualizer.SetObservationLandmarks(landmarks, confidence, visibilities); + visualizer.SetObservationPose(pose, confidence); + visualizer.SetObservationGaze(gaze_analyser.GetGazeCamera().Item1, gaze_analyser.GetGazeCamera().Item2, landmark_detector.CalculateAllEyeLandmarks(), landmark_detector.CalculateAllEyeLandmarks3D(fx, fy, cx, cy), confidence); + + eye_landmarks = landmark_detector.CalculateVisibleEyeLandmarks(); + lines = landmark_detector.CalculateBox(fx, fy, cx, cy); + + gaze_lines = gaze_analyser.CalculateGazeLines(fx, fy, cx, cy); + gaze_angle = gaze_analyser.GetGazeAngle(); + + // Visualisation (as a separate function) + Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 0, 200), (Action)(() => + { + if (ShowAUs) + { + var au_classes = face_analyser.GetCurrentAUsClass(); + var au_regs = face_analyser.GetCurrentAUsReg(); + + auClassGraph.Update(au_classes); + + var au_regs_scaled = new Dictionary(); + foreach (var au_reg in au_regs) + { + au_regs_scaled[au_reg.Key] = au_reg.Value / 5.0; + if (au_regs_scaled[au_reg.Key] < 0) + au_regs_scaled[au_reg.Key] = 0; + + if (au_regs_scaled[au_reg.Key] > 1) + au_regs_scaled[au_reg.Key] = 1; + } + auRegGraph.Update(au_regs_scaled); + } + + if (ShowGeometry) + { + int yaw = (int)(pose[4] * 180 / Math.PI + 0.5); + int roll = (int)(pose[5] * 180 / Math.PI + 0.5); + int pitch = (int)(pose[3] * 180 / Math.PI + 0.5); + + YawLabel.Content = yaw + "°"; + RollLabel.Content = roll + "°"; + PitchLabel.Content = pitch + "°"; + + XPoseLabel.Content = (int)pose[0] + " mm"; + YPoseLabel.Content = (int)pose[1] + " mm"; + ZPoseLabel.Content = (int)pose[2] + " mm"; + + nonRigidGraph.Update(non_rigid_params); + + // Update eye gaze + String x_angle = String.Format("{0:F0}°", gaze_angle.Item1 * (180.0 / Math.PI)); + String y_angle = String.Format("{0:F0}°", gaze_angle.Item2 * (180.0 / Math.PI)); + GazeXLabel.Content = x_angle; + GazeYLabel.Content = y_angle; + } + + if (ShowTrackedVideo) + { + if (new_image) + { + latest_img = frame.CreateWriteableBitmap(); + overlay_image.Clear(); + } + + frame.UpdateWriteableBitmap(latest_img); + + // Clear results from previous image + overlay_image.Source = latest_img; + overlay_image.Confidence.Add(confidence); + overlay_image.FPS = processing_fps.GetFPS(); + overlay_image.Progress = progress; + overlay_image.FaceScale.Add(scale); + + // Update results even if it is not succeeding when in multi-face mode + if(detection_succeeding || multi_face) + { + + List landmark_points = new List(); + foreach (var p in landmarks) + { + landmark_points.Add(new Point(p.Item1, p.Item2)); + } + + List eye_landmark_points = new List(); + foreach (var p in eye_landmarks) + { + eye_landmark_points.Add(new Point(p.Item1, p.Item2)); + } + + overlay_image.OverlayLines.Add(lines); + overlay_image.OverlayPoints.Add(landmark_points); + overlay_image.OverlayPointsVisibility.Add(visibilities); + overlay_image.OverlayEyePoints.Add(eye_landmark_points); + overlay_image.GazeLines.Add(gaze_lines); + } + } + + if (ShowAppearance) + { + RawImage aligned_face = face_analyser.GetLatestAlignedFace(); + RawImage hog_face = visualizer.GetHOGVis(); + + if (latest_aligned_face == null) + { + latest_aligned_face = aligned_face.CreateWriteableBitmap(); + latest_HOG_descriptor = hog_face.CreateWriteableBitmap(); + } + + aligned_face.UpdateWriteableBitmap(latest_aligned_face); + hog_face.UpdateWriteableBitmap(latest_HOG_descriptor); + + AlignedFace.Source = latest_aligned_face; + AlignedHOG.Source = latest_HOG_descriptor; + } + })); + + + } + + private void StopTracking() + { + // First complete the running of the thread + if (processing_thread != null) + { + // Tell the other thread to finish + thread_running = false; + processing_thread.Join(); + } + } + + + // ---------------------------------------------------------- + // Mode handling (image, video) + // ---------------------------------------------------------- + + // Disable GUI components that should not be active during processing + private void SetupFeatureExtractionMode() + { + Dispatcher.Invoke((Action)(() => + { + SettingsMenu.IsEnabled = false; + RecordingMenu.IsEnabled = false; + AUSetting.IsEnabled = false; + FaceDetectorMenu.IsEnabled = false; + LandmarkDetectorMenu.IsEnabled = false; + + PauseButton.IsEnabled = true; + StopButton.IsEnabled = true; + NextFiveFramesButton.IsEnabled = false; + NextFrameButton.IsEnabled = false; + })); + } + + // When the processing is done re-enable the components + private void EndMode() + { + latest_img = null; + skip_frames = 0; + + // Unpause if it's paused + if (thread_paused) + { + Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 0, 200), (Action)(() => + { + PauseButton_Click(null, null); + })); + } + + Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 1, 0), (Action)(() => + { + + SettingsMenu.IsEnabled = true; + RecordingMenu.IsEnabled = true; + AUSetting.IsEnabled = true; + FaceDetectorMenu.IsEnabled = true; + LandmarkDetectorMenu.IsEnabled = true; + + PauseButton.IsEnabled = false; + StopButton.IsEnabled = false; + NextFiveFramesButton.IsEnabled = false; + NextFrameButton.IsEnabled = false; + + // Clean up the interface itself + overlay_image.Source = null; + + auClassGraph.Update(new Dictionary()); + auRegGraph.Update(new Dictionary()); + YawLabel.Content = "0°"; + RollLabel.Content = "0°"; + PitchLabel.Content = "0°"; + + XPoseLabel.Content = "0 mm"; + YPoseLabel.Content = "0 mm"; + ZPoseLabel.Content = "0 mm"; + + nonRigidGraph.Update(new List()); + + GazeXLabel.Content = "0°"; + GazeYLabel.Content = "0°"; + + AlignedFace.Source = null; + AlignedHOG.Source = null; + + })); + } + + // ---------------------------------------------------------- + // Opening Videos/Images + // ---------------------------------------------------------- + + // Some utilities for opening images/videos and directories + private List openMediaDialog(bool images) + { + string[] image_files = new string[0]; + Dispatcher.Invoke(DispatcherPriority.Render, new TimeSpan(0, 0, 0, 2, 0), (Action)(() => + { + var d = new Microsoft.Win32.OpenFileDialog(); + d.Multiselect = true; + if (images) + { + d.Filter = "Image files|*.jpg;*.jpeg;*.bmp;*.png;*.gif"; + } + else + { + d.Filter = "Video files|*.avi;*.webm;*.wmv;*.mov;*.mpg;*.mpeg;*.mp4"; + } + if (d.ShowDialog(this) == true) + { + + image_files = d.FileNames; + + } + })); + List img_files_list = new List(image_files); + return img_files_list; + } + + private string openDirectory() + { + string to_return = ""; + using (var fbd = new System.Windows.Forms.FolderBrowserDialog()) + { + System.Windows.Forms.DialogResult result = fbd.ShowDialog(); + if (result == System.Windows.Forms.DialogResult.OK) + { + to_return = fbd.SelectedPath; + } + else if(!string.IsNullOrWhiteSpace(fbd.SelectedPath)) + { + string messageBoxText = "Could not open the directory."; + string caption = "Invalid directory"; + MessageBoxButton button = MessageBoxButton.OK; + MessageBoxImage icon = MessageBoxImage.Warning; + + // Display message box + System.Windows.MessageBox.Show(messageBoxText, caption, button, icon); + + } + } + return to_return; + } + + private void imageSequenceFileOpenClick(object sender, RoutedEventArgs e) + { + // First clean up existing tracking + StopTracking(); + + string directory = openDirectory(); + if (!string.IsNullOrWhiteSpace(directory)) + { + SequenceReader reader = new SequenceReader(directory, true, fx, fy, cx, cy); + + processing_thread = new Thread(() => ProcessSequence(reader)); + processing_thread.Name = "Image sequence processing"; + processing_thread.Start(); + } + + } + + private void videoFileOpenClick(object sender, RoutedEventArgs e) + { + // First clean up existing tracking + StopTracking(); + + var video_files = openMediaDialog(false); + processing_thread = new Thread(() => ProcessSequences(video_files)); + processing_thread.Name = "Video processing"; + processing_thread.Start(); + + } + + // Selecting one or more images in a directory + private void individualImageFilesOpenClick(object sender, RoutedEventArgs e) + { + // First clean up existing tracking + StopTracking(); + + var image_files = openMediaDialog(true); + + if(image_files.Count > 0) + { + ImageReader reader = new ImageReader(image_files, fx, fy, cx, cy); + + processing_thread = new Thread(() => ProcessIndividualImages(reader)); + processing_thread.Start(); + } + } + + // Selecting a directory containing images + private void individualImageDirectoryOpenClick(object sender, RoutedEventArgs e) + { + + // First clean up existing tracking + StopTracking(); + + string directory = openDirectory(); + if(!string.IsNullOrWhiteSpace(directory)) + { + ImageReader reader = new ImageReader(directory, fx, fy, cx, cy); + + processing_thread = new Thread(() => ProcessIndividualImages(reader)); + processing_thread.Start(); + } + } + + private void openWebcamClick(object sender, RoutedEventArgs e) + { + StopTracking(); + + // If camera selection has already been done, no need to re-populate the list as it is quite slow + if (cam_sec == null) + { + cam_sec = new CameraSelection(); + } + else + { + cam_sec = new CameraSelection(cam_sec.cams); + cam_sec.Visibility = System.Windows.Visibility.Visible; + } + + // Set the icon + Uri iconUri = new Uri("logo1.ico", UriKind.RelativeOrAbsolute); + cam_sec.Icon = BitmapFrame.Create(iconUri); + + if (!cam_sec.no_cameras_found) + cam_sec.ShowDialog(); + + if (cam_sec.camera_selected) + { + int cam_id = cam_sec.selected_camera.Item1; + int width = cam_sec.selected_camera.Item2; + int height = cam_sec.selected_camera.Item3; + + SequenceReader reader = new SequenceReader(cam_id, width, height, fx, fy, cx, cy); + + processing_thread = new Thread(() => ProcessSequence(reader)); + processing_thread.Name = "Webcam processing"; + processing_thread.Start(); + + } + } + + + // -------------------------------------------------------- + // Button handling + // -------------------------------------------------------- + + // Cleanup stuff when closing the window + private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e) + { + if (processing_thread != null) + { + // Stop capture and tracking + thread_running = false; + processing_thread.Join(); + } + // Added by Huang + pubSocket.Close(); + } + + // Stopping the tracking + private void StopButton_Click(object sender, RoutedEventArgs e) + { + if (processing_thread != null) + { + // Stop capture and tracking + thread_paused = false; + thread_running = false; + // Let the processing thread finish + processing_thread.Join(); + + // Clean up the interface + EndMode(); + } + } + + private void PauseButton_Click(object sender, RoutedEventArgs e) + { + if (processing_thread != null) + { + // Stop capture and tracking + thread_paused = !thread_paused; + + NextFrameButton.IsEnabled = thread_paused; + NextFiveFramesButton.IsEnabled = thread_paused; + + if (thread_paused) + { + PauseButton.Content = "Resume"; + } + else + { + PauseButton.Content = "Pause"; + } + } + } + + private void SkipButton_Click(object sender, RoutedEventArgs e) + { + if (sender.Equals(NextFrameButton)) + { + skip_frames += 1; + } + else if (sender.Equals(NextFiveFramesButton)) + { + skip_frames += 5; + } + } + + + private void VisualisationChange(object sender, RoutedEventArgs e) + { + // Collapsing or restoring the windows here + if (!ShowTrackedVideo) + { + VideoBorder.Visibility = System.Windows.Visibility.Collapsed; + MainGrid.ColumnDefinitions[0].Width = new GridLength(0, GridUnitType.Star); + } + else + { + VideoBorder.Visibility = System.Windows.Visibility.Visible; + MainGrid.ColumnDefinitions[0].Width = new GridLength(2.1, GridUnitType.Star); + } + + if (!ShowAppearance) + { + AppearanceBorder.Visibility = System.Windows.Visibility.Collapsed; + MainGrid.ColumnDefinitions[1].Width = new GridLength(0, GridUnitType.Star); + } + else + { + AppearanceBorder.Visibility = System.Windows.Visibility.Visible; + MainGrid.ColumnDefinitions[1].Width = new GridLength(0.8, GridUnitType.Star); + } + + // Collapsing or restoring the windows here + if (!ShowGeometry) + { + GeometryBorder.Visibility = System.Windows.Visibility.Collapsed; + MainGrid.ColumnDefinitions[2].Width = new GridLength(0, GridUnitType.Star); + } + else + { + GeometryBorder.Visibility = System.Windows.Visibility.Visible; + MainGrid.ColumnDefinitions[2].Width = new GridLength(1.0, GridUnitType.Star); + } + + // Collapsing or restoring the windows here + if (!ShowAUs) + { + ActionUnitBorder.Visibility = System.Windows.Visibility.Collapsed; + MainGrid.ColumnDefinitions[3].Width = new GridLength(0, GridUnitType.Star); + } + else + { + ActionUnitBorder.Visibility = System.Windows.Visibility.Visible; + MainGrid.ColumnDefinitions[3].Width = new GridLength(1.6, GridUnitType.Star); + } + + } + + private void setOutputImageSize_Click(object sender, RoutedEventArgs e) + { + + NumberEntryWindow number_entry_window = new NumberEntryWindow(image_output_size); + number_entry_window.Icon = this.Icon; + + number_entry_window.WindowStartupLocation = WindowStartupLocation.CenterScreen; + + if (number_entry_window.ShowDialog() == true) + { + image_output_size = number_entry_window.OutputInt; + } + } + + private void ExclusiveMenuItem_Click(object sender, RoutedEventArgs e) + { + // Disable all other items but this one + MenuItem parent = (MenuItem)((MenuItem)sender).Parent; + foreach (var me in parent.Items) + { + ((MenuItem)me).IsChecked = false; + } + ((MenuItem)sender).IsChecked = true; + + } + + private void setCameraParameters_Click(object sender, RoutedEventArgs e) + { + CameraParametersEntry camera_params_entry_window = new CameraParametersEntry(fx, fy, cx, cy); + camera_params_entry_window.Icon = this.Icon; + + camera_params_entry_window.WindowStartupLocation = WindowStartupLocation.CenterScreen; + + if (camera_params_entry_window.ShowDialog() == true) + { + fx = camera_params_entry_window.Fx; + fy = camera_params_entry_window.Fy; + cx = camera_params_entry_window.Cx; + cy = camera_params_entry_window.Cy; + } + } + + // Making sure only one radio button is selected + private void MenuItemWithRadioButtons_Click(object sender, System.Windows.RoutedEventArgs e) + { + MenuItem mi = sender as MenuItem; + if (mi != null) + { + RadioButton rb = mi.Icon as RadioButton; + if (rb != null) + { + rb.IsChecked = true; + } + } + } + + private void OutputLocationItem_Click(object sender, RoutedEventArgs e) + { + var dlg = new CommonOpenFileDialog(); + dlg.Title = "Select output directory"; + dlg.IsFolderPicker = true; + dlg.AllowNonFileSystemItems = false; + dlg.EnsureFileExists = true; + dlg.EnsurePathExists = true; + dlg.EnsureReadOnly = false; + dlg.EnsureValidNames = true; + dlg.Multiselect = false; + dlg.ShowPlacesList = true; + + if (dlg.ShowDialog() == CommonFileDialogResult.Ok) + { + var folder = dlg.FileName; + record_root = folder; + } + } + + } + +} diff --git a/openface/OpenFace_how-to-compile.txt b/openface/OpenFace_how-to-compile.txt index 34a6bdc..ffa9489 100755 --- a/openface/OpenFace_how-to-compile.txt +++ b/openface/OpenFace_how-to-compile.txt @@ -1,13 +1,15 @@ -- Download Source code OpenFace 2.0.3 from https://github.com/TadasBaltrusaitis/OpenFace/releases -- Install Visial Studio 2015 +- Download Source code OpenFace 2.0.6 from https://github.com/TadasBaltrusaitis/OpenFace/releases +- Install Visial Studio 2015 / 2017 - Run download_models.ps1 / .sh or copy cen_patches_x.xx_of.dat to OpenFace\lib\local\LandmarkDetector\model\patch_experts 0. Overwrite `MainWindow.xaml.cs` in `OpenFace\gui\OpenFaceOffline` with openface/MainWindow.xaml.cs from FACSvatar GitHub -1. Open `OpenFace/OpenFace.sln` with Visual Studio 2015 -2. Right click --> `Manage NuGet Packages...` +1a. Open `OpenFace/OpenFace.sln` with Visual Studio 2015 +1b. Open `OpenFace_vs2017.sln` with Visual Studio 2017 (didn't work for me so far) +2. Right click in "Solution Explorer" on "OpenFaceOffline" --> `Manage NuGet Packages...` 3. Browse and search for `netmq`; install NetMQ by NetMQ with version v4.0.0.1 (AsyncIO.0.1.26) + note: Search under "Browse" not "Installed" 4. Don't update AsyncIO to a newer version (v0.1.40) 5. Search for `json`; Install Newtonsoft.Json by James Newton-King v11.0.2 6. Select OpenFaceOffline --> Release, x64, OpenFaceOffline --> Build --> (Re)build OpenFaceOffline -7. Copy `config.xml` from FACSvatar GitHub \ No newline at end of file +7. Copy `config.xml` from FACSvatar GitHub and put it at `OpenFace\x64\Release\config.xml` # DON'T FORGET - otherwise crashes at startup \ No newline at end of file diff --git a/unity_FACSAvatar/Assets/NetMQ.dll b/unity_FACSAvatar/Assets/NetMQ.dll deleted file mode 100755 index e649c0e..0000000 Binary files a/unity_FACSAvatar/Assets/NetMQ.dll and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Objects/mouthCover.obj b/unity_FACSAvatar/Assets/Objects/mouthCover.obj deleted file mode 100644 index 33a09e7..0000000 --- a/unity_FACSAvatar/Assets/Objects/mouthCover.obj +++ /dev/null @@ -1,168 +0,0 @@ -# Blender v2.79 (sub 0) OBJ File: 'femaleSuitF.blend' -# www.blender.org -mtllib mouthCover.mtl -o Cylinder -v 0.000000 1.393368 0.037128 -v 0.000000 1.439369 0.037128 -v 0.006888 1.393368 0.037899 -v 0.006888 1.439369 0.037899 -v 0.013512 1.393368 0.040180 -v 0.013512 1.439369 0.040180 -v 0.019616 1.393368 0.041919 -v 0.019616 1.439369 0.041919 -v 0.024967 1.393368 0.042294 -v 0.024967 1.439369 0.042294 -v 0.029358 1.393368 0.043205 -v 0.029358 1.439369 0.043205 -v 0.032621 1.393368 0.046605 -v 0.032621 1.439369 0.046605 -v 0.034630 1.393368 0.053630 -v 0.034630 1.439369 0.053630 -v 0.035308 1.393368 0.061452 -v 0.035308 1.439369 0.061452 -v 0.034630 1.393368 0.069273 -v 0.034630 1.439369 0.069273 -v 0.032621 1.393368 0.076794 -v 0.032621 1.439369 0.076794 -v 0.029358 1.393368 0.083726 -v 0.029358 1.439369 0.083726 -v 0.024967 1.393368 0.089801 -v 0.024967 1.439369 0.089801 -v 0.019616 1.393368 0.094787 -v 0.019616 1.439369 0.094787 -v 0.013512 1.393368 0.098492 -v 0.013512 1.439369 0.098492 -v 0.006888 1.393368 0.100774 -v 0.006888 1.439369 0.100774 -v 0.000000 1.393368 0.101544 -v 0.000000 1.439369 0.101544 -v -0.006888 1.393368 0.100774 -v -0.006888 1.439369 0.100774 -v -0.013512 1.393368 0.098492 -v -0.013512 1.439369 0.098492 -v -0.019616 1.393368 0.094787 -v -0.019616 1.439369 0.094787 -v -0.024967 1.393368 0.089801 -v -0.024967 1.439369 0.089801 -v -0.029358 1.393368 0.083726 -v -0.029358 1.439369 0.083726 -v -0.032621 1.393368 0.076794 -v -0.032621 1.439369 0.076794 -v -0.034630 1.393368 0.069273 -v -0.034630 1.439369 0.069273 -v -0.035308 1.393368 0.061452 -v -0.035308 1.439369 0.061452 -v -0.034630 1.393368 0.053630 -v -0.034630 1.439369 0.053630 -v -0.032621 1.393368 0.046109 -v -0.032621 1.439369 0.046109 -v -0.029358 1.393368 0.039177 -v -0.029358 1.439369 0.039177 -v -0.024967 1.393368 0.034025 -v -0.024967 1.439369 0.034025 -v -0.019616 1.393368 0.032746 -v -0.019616 1.439369 0.032746 -v -0.013512 1.393368 0.033982 -v -0.013512 1.439369 0.033982 -v -0.006888 1.393368 0.036037 -v -0.006888 1.439369 0.036037 -vn -0.0953 0.7020 0.7058 -vn -0.1605 0.6832 0.7124 -vn -0.1605 -0.6832 0.7124 -vn -0.0953 -0.7020 0.7058 -vn -0.2139 0.7010 0.6803 -vn -0.2139 -0.7010 0.6803 -vn -0.1260 0.6845 0.7180 -vn -0.1260 -0.6845 0.7180 -vn -0.0987 0.6923 0.7148 -vn -0.0987 -0.6923 0.7148 -vn -0.3694 0.6461 0.6679 -vn -0.3694 -0.6461 0.6679 -vn -0.6538 0.6567 0.3758 -vn -0.6538 -0.6567 0.3758 -vn -0.7154 0.6861 0.1321 -vn -0.7154 -0.6861 0.1321 -vn -0.7255 0.6882 0.0000 -vn -0.7255 -0.6882 0.0000 -vn -0.7147 0.6880 -0.1255 -vn -0.7147 -0.6880 -0.1255 -vn -0.6820 0.6875 -0.2493 -vn -0.6820 -0.6875 -0.2493 -vn -0.6261 0.6868 -0.3692 -vn -0.6261 -0.6868 -0.3692 -vn -0.5455 0.6858 -0.4816 -vn -0.5455 -0.6858 -0.4816 -vn -0.4397 0.6848 -0.5810 -vn -0.4397 -0.6848 -0.5810 -vn -0.3099 0.6839 -0.6605 -vn -0.3099 -0.6839 -0.6605 -vn -0.1605 0.6832 -0.7124 -vn -0.1605 -0.6832 -0.7124 -vn 0.0000 0.6829 -0.7305 -vn 0.0000 -0.6829 -0.7305 -vn 0.1605 0.6832 -0.7124 -vn 0.1605 -0.6832 -0.7124 -vn 0.3099 0.6839 -0.6605 -vn 0.3099 -0.6839 -0.6605 -vn 0.4397 0.6848 -0.5810 -vn 0.4397 -0.6848 -0.5810 -vn 0.5455 0.6858 -0.4816 -vn 0.5455 -0.6858 -0.4816 -vn 0.6261 0.6868 -0.3692 -vn 0.6261 -0.6868 -0.3692 -vn 0.6820 0.6875 -0.2493 -vn 0.6820 -0.6875 -0.2493 -vn 0.7147 0.6880 -0.1255 -vn 0.7147 -0.6880 -0.1255 -vn 0.7255 0.6882 0.0000 -vn 0.7255 -0.6882 0.0000 -vn 0.7147 0.6880 0.1255 -vn 0.7147 -0.6880 0.1255 -vn 0.6820 0.6875 0.2493 -vn 0.6820 -0.6875 0.2493 -vn 0.6173 0.6784 0.3982 -vn 0.6173 -0.6784 0.3982 -vn 0.3999 0.6435 0.6526 -vn 0.3999 -0.6435 0.6526 -vn 0.0131 0.6616 0.7497 -vn 0.0131 -0.6616 0.7497 -vn -0.1779 0.6959 0.6957 -vn -0.1779 -0.6959 0.6957 -vn -0.1640 -0.6913 0.7037 -vn -0.1640 0.6913 0.7037 -usemtl None -s 1 -f 1//1 3//2 4//3 2//4 -f 3//2 5//5 6//6 4//3 -f 5//5 7//7 8//8 6//6 -f 7//7 9//9 10//10 8//8 -f 9//9 11//11 12//12 10//10 -f 11//11 13//13 14//14 12//12 -f 13//13 15//15 16//16 14//14 -f 15//15 17//17 18//18 16//16 -f 17//17 19//19 20//20 18//18 -f 19//19 21//21 22//22 20//20 -f 21//21 23//23 24//24 22//22 -f 23//23 25//25 26//26 24//24 -f 25//25 27//27 28//28 26//26 -f 27//27 29//29 30//30 28//28 -f 29//29 31//31 32//32 30//30 -f 31//31 33//33 34//34 32//32 -f 33//33 35//35 36//36 34//34 -f 35//35 37//37 38//38 36//36 -f 37//37 39//39 40//40 38//38 -f 39//39 41//41 42//42 40//40 -f 41//41 43//43 44//44 42//42 -f 43//43 45//45 46//46 44//44 -f 45//45 47//47 48//48 46//46 -f 47//47 49//49 50//50 48//48 -f 49//49 51//51 52//52 50//50 -f 51//51 53//53 54//54 52//52 -f 53//53 55//55 56//56 54//54 -f 55//55 57//57 58//58 56//56 -f 57//57 59//59 60//60 58//58 -f 59//59 61//61 62//62 60//60 -f 4//3 6//6 8//8 10//10 12//12 14//14 16//16 18//18 20//20 22//22 24//24 26//26 28//28 30//30 32//32 34//34 36//36 38//38 40//40 42//42 44//44 46//46 48//48 50//50 52//52 54//54 56//56 58//58 60//60 62//62 64//63 2//4 -f 61//61 63//64 64//63 62//62 -f 63//64 1//1 2//4 64//63 -f 1//1 63//64 61//61 59//59 57//57 55//55 53//53 51//51 49//49 47//47 45//45 43//43 41//41 39//39 37//37 35//35 33//33 31//31 29//29 27//27 25//25 23//23 21//21 19//19 17//17 15//15 13//13 11//11 9//9 7//7 5//5 3//2 diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll b/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll deleted file mode 100755 index 3d09325..0000000 Binary files a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll b/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll deleted file mode 100755 index cea08b2..0000000 Binary files a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll b/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll deleted file mode 100755 index 05a0d4b..0000000 Binary files a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Scenes/cafe/LightingData.asset b/unity_FACSAvatar/Assets/Scenes/cafe/LightingData.asset deleted file mode 100644 index 01227f8..0000000 Binary files a/unity_FACSAvatar/Assets/Scenes/cafe/LightingData.asset and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-0.exr b/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-0.exr deleted file mode 100644 index f9c38c9..0000000 Binary files a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-0.exr and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-0.exr.meta b/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-0.exr.meta deleted file mode 100644 index ed56e09..0000000 --- a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-0.exr.meta +++ /dev/null @@ -1,85 +0,0 @@ -fileFormatVersion: 2 -guid: de7980a9bb5af934586806d55f7c9b59 -TextureImporter: - fileIDToRecycleName: - 8900000: generatedCubemap - externalObjects: {} - serializedVersion: 5 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 1 - seamlessCubemap: 1 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 2 - aniso: 0 - mipBias: 0 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 0 - spriteTessellationDetail: -1 - textureType: 0 - textureShape: 2 - singleChannelComponent: 0 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - platformSettings: - - serializedVersion: 2 - buildTarget: DefaultTexturePlatform - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 100 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: - vertices: [] - indices: - edges: [] - weights: [] - spritePackingTag: - userData: - assetBundleName: - assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-1.exr b/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-1.exr deleted file mode 100644 index f9a64fe..0000000 Binary files a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-1.exr and /dev/null differ diff --git a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-1.exr.meta b/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-1.exr.meta deleted file mode 100644 index 6b74943..0000000 --- a/unity_FACSAvatar/Assets/Scenes/cafe/ReflectionProbe-1.exr.meta +++ /dev/null @@ -1,85 +0,0 @@ -fileFormatVersion: 2 -guid: 5580929d9ff52a64e95131ae00a55cdd -TextureImporter: - fileIDToRecycleName: - 8900000: generatedCubemap - externalObjects: {} - serializedVersion: 5 - mipmaps: - mipMapMode: 0 - enableMipMap: 1 - sRGBTexture: 1 - linearTexture: 0 - fadeOut: 0 - borderMipMap: 0 - mipMapsPreserveCoverage: 0 - alphaTestReferenceValue: 0.5 - mipMapFadeDistanceStart: 1 - mipMapFadeDistanceEnd: 3 - bumpmap: - convertToNormalMap: 0 - externalNormalMap: 0 - heightScale: 0.25 - normalMapFilter: 0 - isReadable: 0 - grayScaleToAlpha: 0 - generateCubemap: 6 - cubemapConvolution: 1 - seamlessCubemap: 1 - textureFormat: 1 - maxTextureSize: 2048 - textureSettings: - serializedVersion: 2 - filterMode: 2 - aniso: 0 - mipBias: 0 - wrapU: 1 - wrapV: 1 - wrapW: 1 - nPOTScale: 1 - lightmap: 0 - compressionQuality: 50 - spriteMode: 0 - spriteExtrude: 1 - spriteMeshType: 1 - alignment: 0 - spritePivot: {x: 0.5, y: 0.5} - spritePixelsToUnits: 100 - spriteBorder: {x: 0, y: 0, z: 0, w: 0} - spriteGenerateFallbackPhysicsShape: 1 - alphaUsage: 1 - alphaIsTransparency: 0 - spriteTessellationDetail: -1 - textureType: 0 - textureShape: 2 - singleChannelComponent: 0 - maxTextureSizeSet: 0 - compressionQualitySet: 0 - textureFormatSet: 0 - platformSettings: - - serializedVersion: 2 - buildTarget: DefaultTexturePlatform - maxTextureSize: 2048 - resizeAlgorithm: 0 - textureFormat: -1 - textureCompression: 1 - compressionQuality: 100 - crunchedCompression: 0 - allowsAlphaSplitting: 0 - overridden: 0 - androidETC2FallbackOverride: 0 - spriteSheet: - serializedVersion: 2 - sprites: [] - outline: [] - physicsShape: [] - bones: [] - spriteID: - vertices: [] - indices: - edges: [] - weights: [] - spritePackingTag: - userData: - assetBundleName: - assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Textures/AsyncIO.dll b/unity_FACSAvatar/Assets/Textures/AsyncIO.dll deleted file mode 100644 index 5bfd21b..0000000 Binary files a/unity_FACSAvatar/Assets/Textures/AsyncIO.dll and /dev/null differ diff --git a/unity_FACSAvatar/Packages/manifest.json b/unity_FACSAvatar/Packages/manifest.json deleted file mode 100755 index 8a135f4..0000000 --- a/unity_FACSAvatar/Packages/manifest.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "dependencies": { - "com.unity.postprocessing": "2.0.7-preview" - } -} diff --git a/unity_FACSAvatar/ProjectSettings/ProjectVersion.txt b/unity_FACSAvatar/ProjectSettings/ProjectVersion.txt deleted file mode 100755 index 852305d..0000000 --- a/unity_FACSAvatar/ProjectSettings/ProjectVersion.txt +++ /dev/null @@ -1 +0,0 @@ -m_EditorVersion: 2018.1.7f1 diff --git a/unity_FACSAvatar/Assets/Editor.meta b/unity_FACSvatar/Assets/Editor.meta similarity index 100% rename from unity_FACSAvatar/Assets/Editor.meta rename to unity_FACSvatar/Assets/Editor.meta diff --git a/unity_FACSAvatar/Assets/Editor/GroupCommand.cs b/unity_FACSvatar/Assets/Editor/GroupCommand.cs similarity index 100% rename from unity_FACSAvatar/Assets/Editor/GroupCommand.cs rename to unity_FACSvatar/Assets/Editor/GroupCommand.cs diff --git a/unity_FACSAvatar/Assets/Editor/GroupCommand.cs.meta b/unity_FACSvatar/Assets/Editor/GroupCommand.cs.meta similarity index 100% rename from unity_FACSAvatar/Assets/Editor/GroupCommand.cs.meta rename to unity_FACSvatar/Assets/Editor/GroupCommand.cs.meta diff --git a/unity_FACSAvatar/Assets/Materials.meta b/unity_FACSvatar/Assets/Materials.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Materials.meta rename to unity_FACSvatar/Assets/Materials.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/MBlab_f_hair.001.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/Material.001.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_cornea.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_fur.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_generic.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_eyes.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_skin.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_human_teeth.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/female/demo_ready_MBlab_pupil.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_cornea.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_fur.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_generic.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_eyes.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_skin.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_human_teeth.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/FACSvatar_MBlab_pupil.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/MBlab_m_hair.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_cornea.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_human_eyes.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/asianM_pupil.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/causM_m_hair.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat diff --git a/unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat.meta b/unity_FACSvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat.meta rename to unity_FACSvatar/Assets/Materials/ManuelBastioni/male/human_skin.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe.meta b/unity_FACSvatar/Assets/Materials/cafe.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe.meta rename to unity_FACSvatar/Assets/Materials/cafe.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafeTest.mat b/unity_FACSvatar/Assets/Materials/cafe/cafeTest.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafeTest.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafeTest.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafeTest.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafeTest.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafeTest.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafeTest.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_arc.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_arc.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_arc.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_arc.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_arc.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_arc.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_arc.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_arc.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_base.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_base.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_base.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_base.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_base.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_base.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_base.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_base.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_baseTable.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_baseTable.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_baseTable.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_baseTable.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_baseTable.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_baseTable.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_baseTable.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_baseTable.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_bookStand.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_bookStand.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_bookStand.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_bookStand.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_bookStand.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_bookStand.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_bookStand.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_bookStand.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_borders.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_borders.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_borders.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_borders.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_borders.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_borders.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_borders.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_borders.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_cafeMenu.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_cafeMenu.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_cafeMenu.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_cafeMenu.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_cafeMenu.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_cafeMenu.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_cafeMenu.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_cafeMenu.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_chair.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_chair.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_chair.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_chair.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_chair.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_chair.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_chair.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_chair.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_cofeebag.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_cofeebag.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_cofeebag.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_cofeebag.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_cofeebag.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_cofeebag.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_cofeebag.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_cofeebag.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_column.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_column.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_column.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_column.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_column.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_column.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_column.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_column.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_counter.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_counter.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_counter.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_counter.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_counter.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_counter.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_counter.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_counter.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_displayMetal.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_displayMetal.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_displayMetal.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_displayMetal.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_displayMetal.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_displayMetal.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_displayMetal.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_displayMetal.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_displayNotMetal.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_displayWindow.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_displayWindow.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_displayWindow.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_displayWindow.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_displayWindow.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_displayWindow.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_displayWindow.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_displayWindow.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_door.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_door.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_door.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_door.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_door.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_door.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_door.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_door.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_floorLamp.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_floorLamp.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_floorLamp.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_floorLamp.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_floorLamp.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_floorLamp.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_floorLamp.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_floorLamp.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_floortile.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_floortile.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_floortile.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_floortile.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_floortile.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_floortile.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_floortile.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_floortile.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_flower.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_flower.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_flower.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_flower.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_flower.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_flower.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_flower.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_flower.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_glass.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_glass.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_glass.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_glass.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_glass.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_glass.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_glass.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_glass.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_jar.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_jar.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_jar.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_jar.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_jar.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_jar.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_jar.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_jar.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_lightEmission.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_lightEmission.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_lightEmission.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_lightEmission.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_lightEmission.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_lightEmission.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_lightEmission.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_lightEmission.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_logo.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_logo.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_logo.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_logo.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_logo.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_logo.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_logo.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_logo.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_painting.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_painting.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_painting.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_painting.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_painting.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_painting.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_painting.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_painting.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_painting2.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_painting2.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_painting2.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_painting2.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_painting2.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_painting2.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_painting2.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_painting2.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_pipe.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_pipe.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_pipe.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_pipe.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_pipe.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_pipe.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_pipe.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_pipe.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_roof.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_roof.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_roof.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_roof.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_roof.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_roof.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_roof.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_roof.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_skybox.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_skybox.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_skybox.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_skybox.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_skybox.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_skybox.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_skybox.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_skybox.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_table.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_table.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_table.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_table.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_table.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_table.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_table.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_table.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_wall.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_wall.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_wall.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_wall.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_wall.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_wall.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_wall.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_wall.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_woodplank.mat b/unity_FACSvatar/Assets/Materials/cafe/cafe_woodplank.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_woodplank.mat rename to unity_FACSvatar/Assets/Materials/cafe/cafe_woodplank.mat diff --git a/unity_FACSAvatar/Assets/Materials/cafe/cafe_woodplank.mat.meta b/unity_FACSvatar/Assets/Materials/cafe/cafe_woodplank.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/cafe/cafe_woodplank.mat.meta rename to unity_FACSvatar/Assets/Materials/cafe/cafe_woodplank.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/clotesHide.mat b/unity_FACSvatar/Assets/Materials/clotesHide.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/clotesHide.mat rename to unity_FACSvatar/Assets/Materials/clotesHide.mat diff --git a/unity_FACSAvatar/Assets/Materials/clotesHide.mat.meta b/unity_FACSvatar/Assets/Materials/clotesHide.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/clotesHide.mat.meta rename to unity_FACSvatar/Assets/Materials/clotesHide.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/coverMouth.mat b/unity_FACSvatar/Assets/Materials/coverMouth.mat old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Materials/coverMouth.mat rename to unity_FACSvatar/Assets/Materials/coverMouth.mat diff --git a/unity_FACSAvatar/Assets/Materials/coverMouth.mat.meta b/unity_FACSvatar/Assets/Materials/coverMouth.mat.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Materials/coverMouth.mat.meta rename to unity_FACSvatar/Assets/Materials/coverMouth.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/env.mat b/unity_FACSvatar/Assets/Materials/env.mat old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Materials/env.mat rename to unity_FACSvatar/Assets/Materials/env.mat diff --git a/unity_FACSAvatar/Assets/Materials/env.mat.meta b/unity_FACSvatar/Assets/Materials/env.mat.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Materials/env.mat.meta rename to unity_FACSvatar/Assets/Materials/env.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit.meta b/unity_FACSvatar/Assets/Materials/suit.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit.meta rename to unity_FACSvatar/Assets/Materials/suit.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_belt_male.mat b/unity_FACSvatar/Assets/Materials/suit/suit_belt_male.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_belt_male.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_belt_male.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_belt_male.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_belt_male.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_belt_male.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_belt_male.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_jacket_female.mat b/unity_FACSvatar/Assets/Materials/suit/suit_jacket_female.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_jacket_female.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_jacket_female.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_jacket_female.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_jacket_female.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_jacket_female.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_jacket_female.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_jacket_male.mat b/unity_FACSvatar/Assets/Materials/suit/suit_jacket_male.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_jacket_male.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_jacket_male.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_jacket_male.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_jacket_male.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_jacket_male.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_jacket_male.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_pants_female.mat b/unity_FACSvatar/Assets/Materials/suit/suit_pants_female.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_pants_female.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_pants_female.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_pants_female.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_pants_female.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_pants_female.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_pants_female.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_pants_male.mat b/unity_FACSvatar/Assets/Materials/suit/suit_pants_male.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_pants_male.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_pants_male.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_pants_male.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_pants_male.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_pants_male.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_pants_male.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shirt_female.mat b/unity_FACSvatar/Assets/Materials/suit/suit_shirt_female.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shirt_female.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_shirt_female.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shirt_female.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_shirt_female.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shirt_female.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_shirt_female.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shirt_male.mat b/unity_FACSvatar/Assets/Materials/suit/suit_shirt_male.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shirt_male.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_shirt_male.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shirt_male.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_shirt_male.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shirt_male.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_shirt_male.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shoes.mat b/unity_FACSvatar/Assets/Materials/suit/suit_shoes.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shoes.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_shoes.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shoes.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_shoes.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shoes.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_shoes.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shoes_sole.mat b/unity_FACSvatar/Assets/Materials/suit/suit_shoes_sole.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shoes_sole.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_shoes_sole.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_shoes_sole.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_shoes_sole.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_shoes_sole.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_shoes_sole.mat.meta diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_tie_male.mat b/unity_FACSvatar/Assets/Materials/suit/suit_tie_male.mat similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_tie_male.mat rename to unity_FACSvatar/Assets/Materials/suit/suit_tie_male.mat diff --git a/unity_FACSAvatar/Assets/Materials/suit/suit_tie_male.mat.meta b/unity_FACSvatar/Assets/Materials/suit/suit_tie_male.mat.meta similarity index 100% rename from unity_FACSAvatar/Assets/Materials/suit/suit_tie_male.mat.meta rename to unity_FACSvatar/Assets/Materials/suit/suit_tie_male.mat.meta diff --git a/unity_FACSAvatar/Assets/NetMQ.dll.meta b/unity_FACSvatar/Assets/NetMQ.dll.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/NetMQ.dll.meta rename to unity_FACSvatar/Assets/NetMQ.dll.meta diff --git a/unity_FACSAvatar/Assets/Objects.meta b/unity_FACSvatar/Assets/Objects.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Objects.meta rename to unity_FACSvatar/Assets/Objects.meta diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni.meta b/unity_FACSvatar/Assets/Objects/ManuelBastioni.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni.meta rename to unity_FACSvatar/Assets/Objects/ManuelBastioni.meta diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx b/unity_FACSvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx rename to unity_FACSvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx.meta b/unity_FACSvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx.meta rename to unity_FACSvatar/Assets/Objects/ManuelBastioni/FACSvatar_MB-161a_caucasian_male_old.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx b/unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx rename to unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx.meta b/unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx.meta rename to unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_female_clothes.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx b/unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx rename to unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx diff --git a/unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx.meta b/unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx.meta rename to unity_FACSvatar/Assets/Objects/ManuelBastioni/asian_male_clothes.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects.meta b/unity_FACSvatar/Assets/Objects/cafeObjects.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_arcGlass.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_base.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_base.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_base.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_base.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_base.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_base.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_base.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_base.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_baseTable.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_bookstand.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_chair.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_chair.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_chair.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_chair.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_chair.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_chair.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_chair.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_chair.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_coffebag.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_column.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_column.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_column.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_column.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_column.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_column.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_column.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_column.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_counter.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_counter.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_counter.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_counter.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_counter.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_counter.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_counter.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_counter.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_display.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_display.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_display.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_display.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_display.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_display.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_display.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_display.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_door.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_door.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_door.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_door.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_door.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_door.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_door.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_door.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_floorLamp.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_flower.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_flower.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_flower.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_flower.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_flower.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_flower.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_flower.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_flower.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_inside.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_inside.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_inside.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_inside.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_inside.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_inside.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_inside.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_inside.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_jar.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_jar.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_jar.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_jar.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_jar.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_jar.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_jar.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_jar.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_logo.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_logo.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_logo.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_logo.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_logo.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_logo.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_logo.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_logo.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_menuTable.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_painting.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_painting.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_painting.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_painting.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_painting.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_painting.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_painting.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_painting.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_pipe.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_roofLamp_wire.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_table.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_table.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_table.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_table.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_table.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_table.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_table.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_table.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx diff --git a/unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx.meta b/unity_FACSvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx.meta rename to unity_FACSvatar/Assets/Objects/cafeObjects/cafe_woodplank.fbx.meta diff --git a/unity_FACSAvatar/Assets/Objects/mouthCover.obj.meta b/unity_FACSvatar/Assets/Objects/mouthCover.obj.meta similarity index 100% rename from unity_FACSAvatar/Assets/Objects/mouthCover.obj.meta rename to unity_FACSvatar/Assets/Objects/mouthCover.obj.meta diff --git a/unity_FACSAvatar/Assets/Objects/skybox.blend b/unity_FACSvatar/Assets/Objects/skybox.blend old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Objects/skybox.blend rename to unity_FACSvatar/Assets/Objects/skybox.blend diff --git a/unity_FACSAvatar/Assets/Objects/skybox.blend.meta b/unity_FACSvatar/Assets/Objects/skybox.blend.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Objects/skybox.blend.meta rename to unity_FACSvatar/Assets/Objects/skybox.blend.meta diff --git a/unity_FACSAvatar/Assets/Packages.meta b/unity_FACSvatar/Assets/Packages.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Packages.meta rename to unity_FACSvatar/Assets/Packages.meta diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet.meta diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies.meta index 65fc32b..59ac16b --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 577d9725f58264943855b8ac185531fe -folderAsset: yes -timeCreated: 1466788344 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 577d9725f58264943855b8ac185531fe +folderAsset: yes +timeCreated: 1466788344 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT.meta index 516f30c..f9dba64 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 14f21d7a1e53a8c4e87b25526a7eb63c -folderAsset: yes -timeCreated: 1466788345 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 14f21d7a1e53a8c4e87b25526a7eb63c +folderAsset: yes +timeCreated: 1466788345 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML old mode 100755 new mode 100644 similarity index 98% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML index 2b72b8e..9a914af --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML @@ -1,8015 +1,8015 @@ - - - - Newtonsoft.Json - - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. - - - true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. - - - - - Gets or sets a value indicating whether the root object will be read as a JSON array. - - - true if the root object will be read as a JSON array; otherwise, false. - - - - - Gets or sets the used when reading values from BSON. - - The used when reading values from BSON. - - - - Initializes a new instance of the class. - - The stream. - - - - Initializes a new instance of the class. - - The reader. - - - - Initializes a new instance of the class. - - The stream. - if set to true the root object will be read as a JSON array. - The used when reading values from BSON. - - - - Initializes a new instance of the class. - - The reader. - if set to true the root object will be read as a JSON array. - The used when reading values from BSON. - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Changes the to Closed. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets the used when writing values to BSON. - When set to no conversion will occur. - - The used when writing values to BSON. - - - - Initializes a new instance of the class. - - The stream. - - - - Initializes a new instance of the class. - - The writer. - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Writes the end. - - The token. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes raw JSON where a value is expected and updates the writer's state. - - The raw JSON to write. - - - - Writes the beginning of a JSON array. - - - - - Writes the beginning of a JSON object. - - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Closes this stream and the underlying stream. - - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value that represents a BSON object id. - - The Object ID value to write. - - - - Writes a BSON regex. - - The regex pattern. - The regex options. - - - - Represents a BSON Oid (object id). - - - - - Gets or sets the value of the Oid. - - The value of the Oid. - - - - Initializes a new instance of the class. - - The Oid value. - - - - Converts a binary value to and from a base 64 string value. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Create a custom object - - The object type to convert. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Creates an object which will then be populated by the serializer. - - Type of the object. - The created object. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can write JSON. - - - true if this can write JSON; otherwise, false. - - - - - Provides a base class for converting a to and from JSON. - - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - - - - - - - - - - - - - - - - - - - - - Converts a to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from JSON and BSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from JSON and BSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts an to and from its name string value. - - - - - Gets or sets a value indicating whether the written enum text should be camel case. - - true if the written enum text will be camel case; otherwise, false. - - - - Gets or sets a value indicating whether integer values are allowed. - - true if integers are allowed; otherwise, false. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - true if the written enum text will be camel case; otherwise, false. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Json Converter for Vector2, Vector3 and Vector4. Only serializes x, y, (z) and (w) properties. - - - - - Default Constructor - All Vector types enabled by default - - - - - Selectively enable Vector types - - Use for Vector2 objects - Use for Vector3 objects - Use for Vector4 objects - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Converts a to and from a string (e.g. "1.2.3.4"). - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing property value of the JSON that is being converted. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). - - - - - Gets or sets the date time styles used when converting a date to and from JSON. - - The date time styles used when converting a date to and from JSON. - - - - Gets or sets the date time format used when converting a date to and from JSON. - - The date time format used when converting a date to and from JSON. - - - - Gets or sets the culture used when converting a date to and from JSON. - - The culture used when converting a date to and from JSON. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing property value of the JSON that is being converted. - The calling serializer. - The object value. - - - - Converts XML to and from JSON. - - - - - Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. - - The name of the deserialize root element. - - - - Gets or sets a flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - true if the array attibute is written to the XML; otherwise, false. - - - - Gets or sets a value indicating whether to write the root JSON object. - - true if the JSON root object is omitted; otherwise, false. - - - - Writes the JSON representation of the object. - - The to write to. - The calling serializer. - The value. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Checks if the attributeName is a namespace attribute. - - Attribute name to test. - The attribute name prefix if it has one, otherwise an empty string. - True if attribute name is for a namespace attribute, otherwise false. - - - - Determines whether this instance can convert the specified value type. - - Type of the value. - - true if this instance can convert the specified value type; otherwise, false. - - - - - Specifies how constructors are used when initializing objects during deserialization by the . - - - - - First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. - - - - - Json.NET will use a non-public default constructor before falling back to a paramatized constructor. - - - - - Specifies how dates are formatted when writing JSON text. - - - - - Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". - - - - - Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". - - - - - Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. - - - - - Date formatted strings are not parsed to a date type and are read as strings. - - - - - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - - - - - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - - - - - Specifies how to treat the time value when converting between string and . - - - - - Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. - - - - - Treat as a UTC. If the object represents a local time, it is converted to a UTC. - - - - - Treat as a local time if a is being converted to a string. - If a string is being converted to , convert to a local time if a time zone is specified. - - - - - Time zone information should be preserved when converting. - - - - - Specifies float format handling options when writing special floating point numbers, e.g. , - and with . - - - - - Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". - - - - - Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. - Note that this will produce non-valid JSON. - - - - - Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. - - - - - Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Floating point numbers are parsed to . - - - - - Floating point numbers are parsed to . - - - - - Specifies formatting options for the . - - - - - No special formatting is applied. This is the default. - - - - - Causes child objects to be indented according to the and settings. - - - - - Provides an interface for using pooled arrays. - - The array type content. - - - - Rent a array from the pool. This array must be returned when it is no longer needed. - - The minimum required length of the array. The returned array may be longer. - The rented array from the pool. This array must be returned when it is no longer needed. - - - - Return an array to the pool. - - The array that is being returned. - - - - Instructs the to use the specified constructor when deserializing that object. - - - - - Instructs the how to serialize the collection. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - The exception thrown when an error occurs during JSON serialization or deserialization. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - Instructs the to deserialize properties with no matching class member into the specified collection - and write values during serialization. - - - - - Gets or sets a value that indicates whether to write extension data when serializing the object. - - - true to write extension data when serializing the object; otherwise, false. The default is true. - - - - - Gets or sets a value that indicates whether to read extension data when deserializing the object. - - - true to read extension data when deserializing the object; otherwise, false. The default is true. - - - - - Initializes a new instance of the class. - - - - - Instructs the to always serialize the member, and require the member has a value. - - - - - Specifies how JSON comments are handled when loading JSON. - - - - - Ignore comments. - - - - - Load comments as a with type . - - - - - Specifies how line information is handled when loading JSON. - - - - - Ignore line information. - - - - - Load line information. - - - - - Represents a view of a . - - - - - Initializes a new instance of the class. - - The name. - - - - When overridden in a derived class, returns whether resetting an object changes its value. - - - true if resetting the component changes its value; otherwise, false. - - The component to test for reset capability. - - - - - When overridden in a derived class, gets the current value of the property on a component. - - - The value of a property for a given component. - - The component with the property for which to retrieve the value. - - - - - When overridden in a derived class, resets the value for this property of the component to the default value. - - The component with the property value that is to be reset to the default value. - - - - - When overridden in a derived class, sets the value of the component to a different value. - - The component with the property value that is to be set. - The new value. - - - - - When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. - - - true if the property should be persisted; otherwise, false. - - The component with the property to be examined for persistence. - - - - - When overridden in a derived class, gets the type of the component this property is bound to. - - - A that represents the type of component this property is bound to. When the or methods are invoked, the object specified might be an instance of this type. - - - - - When overridden in a derived class, gets a value indicating whether this property is read-only. - - - true if the property is read-only; otherwise, false. - - - - - When overridden in a derived class, gets the type of the property. - - - A that represents the type of the property. - - - - - Gets the hash code for the name of the member. - - - - The hash code for the name of the member. - - - - - Specifies the settings used when loading JSON. - - - - - Gets or sets how JSON comments are handled when loading JSON. - - The JSON comment handling. - - - - Gets or sets how JSON line info is handled when loading JSON. - - The JSON line info handling. - - - - Specifies the settings used when merging JSON. - - - - - Gets or sets the method used when merging JSON arrays. - - The method used when merging JSON arrays. - - - - Gets or sets how how null value properties are merged. - - How null value properties are merged. - - - - Specifies how JSON arrays are merged together. - - - - Concatenate arrays. - - - Union arrays, skipping items that already exist. - - - Replace all array items. - - - Merge array items together, matched by index. - - - - Specifies how null value properties are merged. - - - - - The content's null value properties will be ignored during merging. - - - - - The content's null value properties will be merged. - - - - - Represents a raw JSON string. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class. - - The raw json. - - - - Creates an instance of with the content of the reader's current token. - - The reader. - An instance of with the content of the reader's current token. - - - - Represents a collection of objects. - - The type of token - - - - Gets the with the specified key. - - - - - - Compares tokens to determine whether they are equal. - - - - - Determines whether the specified objects are equal. - - The first object of type to compare. - The second object of type to compare. - - true if the specified objects are equal; otherwise, false. - - - - - Returns a hash code for the specified object. - - The for which a hash code is to be returned. - A hash code for the specified object. - The type of is a reference type and is null. - - - - Contains the LINQ to JSON extension methods. - - - - - Returns a collection of tokens that contains the ancestors of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains the ancestors of every token in the source collection. - - - - Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains every token in the source collection, the ancestors of every token in the source collection. - - - - Returns a collection of tokens that contains the descendants of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains the descendants of every token in the source collection. - - - - Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains every token in the source collection, and the descendants of every token in the source collection. - - - - Returns a collection of child properties of every object in the source collection. - - An of that contains the source collection. - An of that contains the properties of every object in the source collection. - - - - Returns a collection of child values of every object in the source collection with the given key. - - An of that contains the source collection. - The token key. - An of that contains the values of every token in the source collection with the given key. - - - - Returns a collection of child values of every object in the source collection. - - An of that contains the source collection. - An of that contains the values of every token in the source collection. - - - - Returns a collection of converted child values of every object in the source collection with the given key. - - The type to convert the values to. - An of that contains the source collection. - The token key. - An that contains the converted values of every token in the source collection with the given key. - - - - Returns a collection of converted child values of every object in the source collection. - - The type to convert the values to. - An of that contains the source collection. - An that contains the converted values of every token in the source collection. - - - - Converts the value. - - The type to convert the value to. - A cast as a of . - A converted value. - - - - Converts the value. - - The source collection type. - The type to convert the value to. - A cast as a of . - A converted value. - - - - Returns a collection of child tokens of every array in the source collection. - - The source collection type. - An of that contains the source collection. - An of that contains the values of every token in the source collection. - - - - Returns a collection of converted child tokens of every array in the source collection. - - An of that contains the source collection. - The type to convert the values to. - The source collection type. - An that contains the converted values of every token in the source collection. - - - - Returns the input typed as . - - An of that contains the source collection. - The input typed as . - - - - Returns the input typed as . - - The source collection type. - An of that contains the source collection. - The input typed as . - - - - Represents a JSON constructor. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets or sets the name of this constructor. - - The constructor name. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified name and content. - - The constructor name. - The contents of the constructor. - - - - Initializes a new instance of the class with the specified name and content. - - The constructor name. - The contents of the constructor. - - - - Initializes a new instance of the class with the specified name. - - The constructor name. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified key. - - The with the specified key. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Represents a token that can contain other tokens. - - - - - Occurs when the list changes or an item in the list changes. - - - - - Occurs before an item is added to the collection. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Raises the event. - - The instance containing the event data. - - - - Raises the event. - - The instance containing the event data. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Get the first child token of this token. - - - A containing the first child token of the . - - - - - Get the last child token of this token. - - - A containing the last child token of the . - - - - - Returns a collection of the child tokens of this token, in document order. - - - An of containing the child tokens of this , in document order. - - - - - Returns a collection of the child values of this token, in document order. - - The type to convert the values to. - - A containing the child values of this , in document order. - - - - - Returns a collection of the descendant tokens for this token in document order. - - An containing the descendant tokens of the . - - - - Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. - - An containing this token, and all the descendant tokens of the . - - - - Adds the specified content as children of this . - - The content to be added. - - - - Adds the specified content as the first children of this . - - The content to be added. - - - - Creates an that can be used to add tokens to the . - - An that is ready to have content written to it. - - - - Replaces the children nodes of this token with the specified content. - - The content. - - - - Removes the child nodes from this token. - - - - - Merge the specified content into this . - - The content to be merged. - - - - Merge the specified content into this using . - - The content to be merged. - The used to merge the content. - - - - Gets the count of child JSON tokens. - - The count of child JSON tokens - - - - Represents a collection of objects. - - The type of token - - - - An empty collection of objects. - - - - - Initializes a new instance of the struct. - - The enumerable. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - - - - Gets the with the specified key. - - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - Represents a JSON object. - - - - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Occurs when a property value changes. - - - - - Occurs when a property value is changing. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified content. - - The contents of the object. - - - - Initializes a new instance of the class with the specified content. - - The contents of the object. - - - - Gets the node type for this . - - The type. - - - - Gets an of this object's properties. - - An of this object's properties. - - - - Gets a the specified name. - - The property name. - A with the specified name or null. - - - - Gets an of this object's property values. - - An of this object's property values. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets or sets the with the specified property name. - - - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - - - - Creates a from an object. - - The object that will be used to create . - A with the values of the specified object - - - - Creates a from an object. - - The object that will be used to create . - The that will be used to read the object. - A with the values of the specified object - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified property name. - - Name of the property. - The with the specified property name. - - - - Gets the with the specified property name. - The exact property name will be searched for first and if no matching property is found then - the will be used to match a property. - - Name of the property. - One of the enumeration values that specifies how the strings will be compared. - The with the specified property name. - - - - Tries to get the with the specified property name. - The exact property name will be searched for first and if no matching property is found then - the will be used to match a property. - - Name of the property. - The value. - One of the enumeration values that specifies how the strings will be compared. - true if a value was successfully retrieved; otherwise, false. - - - - Adds the specified property name. - - Name of the property. - The value. - - - - Removes the property with the specified name. - - Name of the property. - true if item was successfully removed; otherwise, false. - - - - Tries the get value. - - Name of the property. - The value. - true if a value was successfully retrieved; otherwise, false. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Raises the event with the provided arguments. - - Name of the property. - - - - Raises the event with the provided arguments. - - Name of the property. - - - - Returns the properties for this instance of a component. - - - A that represents the properties for this component instance. - - - - - Returns the properties for this instance of a component using the attribute array as a filter. - - An array of type that is used as a filter. - - A that represents the filtered properties for this component instance. - - - - - Returns a collection of custom attributes for this instance of a component. - - - An containing the attributes for this object. - - - - - Returns the class name of this instance of a component. - - - The class name of the object, or null if the class does not have a name. - - - - - Returns the name of this instance of a component. - - - The name of the object, or null if the object does not have a name. - - - - - Returns a type converter for this instance of a component. - - - A that is the converter for this object, or null if there is no for this object. - - - - - Returns the default event for this instance of a component. - - - An that represents the default event for this object, or null if this object does not have events. - - - - - Returns the default property for this instance of a component. - - - A that represents the default property for this object, or null if this object does not have properties. - - - - - Returns an editor of the specified type for this instance of a component. - - A that represents the editor for this object. - - An of the specified type that is the editor for this object, or null if the editor cannot be found. - - - - - Returns the events for this instance of a component using the specified attribute array as a filter. - - An array of type that is used as a filter. - - An that represents the filtered events for this component instance. - - - - - Returns the events for this instance of a component. - - - An that represents the events for this component instance. - - - - - Returns an object that contains the property described by the specified property descriptor. - - A that represents the property whose owner is to be found. - - An that represents the owner of the specified property. - - - - - Represents a JSON array. - - - - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified content. - - The contents of the array. - - - - Initializes a new instance of the class with the specified content. - - The contents of the array. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - - - - Creates a from an object. - - The object that will be used to create . - A with the values of the specified object - - - - Creates a from an object. - - The object that will be used to create . - The that will be used to read the object. - A with the values of the specified object - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets or sets the at the specified index. - - - - - - Determines the index of a specific item in the . - - The object to locate in the . - - The index of if found in the list; otherwise, -1. - - - - - Inserts an item to the at the specified index. - - The zero-based index at which should be inserted. - The object to insert into the . - - is not a valid index in the . - The is read-only. - - - - Removes the item at the specified index. - - The zero-based index of the item to remove. - - is not a valid index in the . - The is read-only. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Adds an item to the . - - The object to add to the . - The is read-only. - - - - Removes all items from the . - - The is read-only. - - - - Determines whether the contains a specific value. - - The object to locate in the . - - true if is found in the ; otherwise, false. - - - - - Copies to. - - The array. - Index of the array. - - - - Gets a value indicating whether the is read-only. - - true if the is read-only; otherwise, false. - - - - Removes the first occurrence of a specific object from the . - - The object to remove from the . - - true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . - - The is read-only. - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Gets the at the reader's current position. - - - - - Initializes a new instance of the class. - - The token to read from. - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Gets the path of the current JSON token. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets the at the writer's current position. - - - - - Gets the token being writen. - - The token being writen. - - - - Initializes a new instance of the class writing to the given . - - The container being written to. - - - - Initializes a new instance of the class. - - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the end. - - The token. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Represents an abstract JSON token. - - - - - Gets a comparer that can compare two tokens for value equality. - - A that can compare two nodes for value equality. - - - - Gets or sets the parent. - - The parent. - - - - Gets the root of this . - - The root of this . - - - - Gets the node type for this . - - The type. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Compares the values of two tokens, including the values of all descendant tokens. - - The first to compare. - The second to compare. - true if the tokens are equal; otherwise false. - - - - Gets the next sibling token of this node. - - The that contains the next sibling token. - - - - Gets the previous sibling token of this node. - - The that contains the previous sibling token. - - - - Gets the path of the JSON token. - - - - - Adds the specified content immediately after this token. - - A content object that contains simple content or a collection of content objects to be added after this token. - - - - Adds the specified content immediately before this token. - - A content object that contains simple content or a collection of content objects to be added before this token. - - - - Returns a collection of the ancestor tokens of this token. - - A collection of the ancestor tokens of this token. - - - - Returns a collection of tokens that contain this token, and the ancestors of this token. - - A collection of tokens that contain this token, and the ancestors of this token. - - - - Returns a collection of the sibling tokens after this token, in document order. - - A collection of the sibling tokens after this tokens, in document order. - - - - Returns a collection of the sibling tokens before this token, in document order. - - A collection of the sibling tokens before this token, in document order. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets the with the specified key converted to the specified type. - - The type to convert the token to. - The token key. - The converted token value. - - - - Get the first child token of this token. - - A containing the first child token of the . - - - - Get the last child token of this token. - - A containing the last child token of the . - - - - Returns a collection of the child tokens of this token, in document order. - - An of containing the child tokens of this , in document order. - - - - Returns a collection of the child tokens of this token, in document order, filtered by the specified type. - - The type to filter the child tokens on. - A containing the child tokens of this , in document order. - - - - Returns a collection of the child values of this token, in document order. - - The type to convert the values to. - A containing the child values of this , in document order. - - - - Removes this token from its parent. - - - - - Replaces this token with the specified token. - - The value. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Returns the indented JSON for this token. - - - The indented JSON for this token. - - - - - Returns the JSON for this token using the given formatting and converters. - - Indicates how the output is formatted. - A collection of which will be used when writing the token. - The JSON for this token using the given formatting and converters. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to []. - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from [] to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Creates an for this token. - - An that can be used to read this token and its descendants. - - - - Creates a from an object. - - The object that will be used to create . - A with the value of the specified object - - - - Creates a from an object using the specified . - - The object that will be used to create . - The that will be used when reading the object. - A with the value of the specified object - - - - Creates the specified .NET type from the . - - The object type that the token will be deserialized to. - The new object created from the JSON value. - - - - Creates the specified .NET type from the . - - The object type that the token will be deserialized to. - The new object created from the JSON value. - - - - Creates the specified .NET type from the using the specified . - - The object type that the token will be deserialized to. - The that will be used when creating the object. - The new object created from the JSON value. - - - - Creates the specified .NET type from the using the specified . - - The object type that the token will be deserialized to. - The that will be used when creating the object. - The new object created from the JSON value. - - - - Creates a from a . - - An positioned at the token to read into this . - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Creates a from a . - - An positioned at the token to read into this . - The used to load the JSON. - If this is null, default load settings will be used. - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - Creates a from a . - - An positioned at the token to read into this . - The used to load the JSON. - If this is null, default load settings will be used. - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Creates a from a . - - An positioned at the token to read into this . - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Selects a using a JPath expression. Selects the token that matches the object path. - - - A that contains a JPath expression. - - A , or null. - - - - Selects a using a JPath expression. Selects the token that matches the object path. - - - A that contains a JPath expression. - - A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. - A . - - - - Selects a collection of elements using a JPath expression. - - - A that contains a JPath expression. - - An that contains the selected elements. - - - - Selects a collection of elements using a JPath expression. - - - A that contains a JPath expression. - - A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. - An that contains the selected elements. - - - - Creates a new instance of the . All child tokens are recursively cloned. - - A new instance of the . - - - - Adds an object to the annotation list of this . - - The annotation to add. - - - - Get the first annotation object of the specified type from this . - - The type of the annotation to retrieve. - The first annotation object that matches the specified type, or null if no annotation is of the specified type. - - - - Gets the first annotation object of the specified type from this . - - The of the annotation to retrieve. - The first annotation object that matches the specified type, or null if no annotation is of the specified type. - - - - Gets a collection of annotations of the specified type for this . - - The type of the annotations to retrieve. - An that contains the annotations for this . - - - - Gets a collection of annotations of the specified type for this . - - The of the annotations to retrieve. - An of that contains the annotations that match the specified type for this . - - - - Removes the annotations of the specified type from this . - - The type of annotations to remove. - - - - Removes the annotations of the specified type from this . - - The of annotations to remove. - - - - Represents a JSON property. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets the property name. - - The property name. - - - - Gets or sets the property value. - - The property value. - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - The property name. - The property content. - - - - Initializes a new instance of the class. - - The property name. - The property content. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Specifies the type of token. - - - - - No token type has been set. - - - - - A JSON object. - - - - - A JSON array. - - - - - A JSON constructor. - - - - - A JSON object property. - - - - - A comment. - - - - - An integer value. - - - - - A float value. - - - - - A string value. - - - - - A boolean value. - - - - - A null value. - - - - - An undefined value. - - - - - A date value. - - - - - A raw JSON value. - - - - - A collection of bytes value. - - - - - A Guid value. - - - - - A Uri value. - - - - - A TimeSpan value. - - - - - Represents a value in JSON (string, integer, date, etc). - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Creates a comment with the given value. - - The value. - A comment with the given value. - - - - Creates a string with the given value. - - The value. - A string with the given value. - - - - Creates a null value. - - A null value. - - - - Creates a undefined value. - - A undefined value. - - - - Gets the node type for this . - - The type. - - - - Gets or sets the underlying token value. - - The underlying token value. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Indicates whether the current object is equal to another object of the same type. - - - true if the current object is equal to the parameter; otherwise, false. - - An object to compare with this object. - - - - Determines whether the specified is equal to the current . - - The to compare with the current . - - true if the specified is equal to the current ; otherwise, false. - - - The parameter is null. - - - - - Serves as a hash function for a particular type. - - - A hash code for the current . - - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format. - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format provider. - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format. - The format provider. - - A that represents this instance. - - - - - Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. - - An object to compare with this instance. - - A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: - Value - Meaning - Less than zero - This instance is less than . - Zero - This instance is equal to . - Greater than zero - This instance is greater than . - - - is not the same type as this instance. - - - - - Specifies metadata property handling options for the . - - - - - Read metadata properties located at the start of a JSON object. - - - - - Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. - - - - - Do not try to read metadata properties. - - - - - Represents a trace writer that writes to the application's instances. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - - The that will be used to filter the trace messages passed to the writer. - - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Provides methods to get attributes. - - - - - Returns a collection of all of the attributes, or an empty collection if there are no attributes. - - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. - - The type of the attributes. - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Represents a trace writer. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - The that will be used to filter the trace messages passed to the writer. - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Contract details for a used by the . - - - - - Gets or sets the default collection items . - - The converter. - - - - Gets or sets a value indicating whether the collection items preserve object references. - - true if collection items preserve object references; otherwise, false. - - - - Gets or sets the collection item reference loop handling. - - The reference loop handling. - - - - Gets or sets the collection item type name handling. - - The type name handling. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Represents a trace writer that writes to memory. When the trace message limit is - reached then old trace messages will be removed as new messages are added. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - - The that will be used to filter the trace messages passed to the writer. - - - - - Initializes a new instance of the class. - - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Returns an enumeration of the most recent trace messages. - - An enumeration of the most recent trace messages. - - - - Returns a of the most recent trace messages. - - - A of the most recent trace messages. - - - - - Provides methods to get attributes from a , , or . - - - - - Initializes a new instance of the class. - - The instance to get attributes for. This parameter should be a , , or . - - - - Returns a collection of all of the attributes, or an empty collection if there are no attributes. - - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. - - The type of the attributes. - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Contract details for a used by the . - - - - - Gets or sets the ISerializable object constructor. - - The ISerializable object constructor. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Provides data for the Error event. - - - - - Gets the current object the error event is being raised against. - - The current object the error event is being raised against. - - - - Gets the error context. - - The error context. - - - - Initializes a new instance of the class. - - The current object. - The error context. - - - - Resolves member mappings for a type, camel casing property names. - - - - - Initializes a new instance of the class. - - - - - Resolves the name of the property. - - Name of the property. - The property name camel cased. - - - - Used by to resolves a for a given . - - - - - Gets a value indicating whether members are being get and set using dynamic code generation. - This value is determined by the runtime permissions available. - - - true if using dynamic code generation; otherwise, false. - - - - - Gets or sets the default members search flags. - - The default members search flags. - - - - Gets or sets a value indicating whether compiler generated members should be serialized. - - - true if serialized compiler generated members; otherwise, false. - - - - - Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. - - - true if the interface will be ignored when serializing and deserializing types; otherwise, false. - - - - - Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. - - - true if the attribute will be ignored when serializing and deserializing types; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - - If set to true the will use a cached shared with other resolvers of the same type. - Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only - happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different - results. When set to false it is highly recommended to reuse instances with the . - - - - - Resolves the contract for a given type. - - The type to resolve a contract for. - The contract for a given type. - - - - Gets the serializable members for the type. - - The type to get serializable members for. - The serializable members for the type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates the constructor parameters. - - The constructor to create properties for. - The type's member properties. - Properties for the given . - - - - Creates a for the given . - - The matching member property. - The constructor parameter. - A created for the given . - - - - Resolves the default for the contract. - - Type of the object. - The contract's default . - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Determines which contract type is created for the given type. - - Type of the object. - A for the given type. - - - - Creates properties for the given . - - The type to create properties for. - /// The member serialization mode for the type. - Properties for the given . - - - - Creates the used by the serializer to get and set values from a member. - - The member. - The used by the serializer to get and set values from a member. - - - - Creates a for the given . - - The member's parent . - The member to create a for. - A created for the given . - - - - Resolves the name of the property. - - Name of the property. - Resolved name of the property. - - - - Resolves the key of the dictionary. By default is used to resolve dictionary keys. - - Key of the dictionary. - Resolved key of the dictionary. - - - - Gets the resolved name of the property. - - Name of the property. - Name of the property. - - - - The default serialization binder used when resolving and loading classes from type names. - - - - - When overridden in a derived class, controls the binding of a serialized object to a type. - - Specifies the name of the serialized object. - Specifies the name of the serialized object. - - The type of the object the formatter creates a new instance of. - - - - - Provides information surrounding an error. - - - - - Gets the error. - - The error. - - - - Gets the original object that caused the error. - - The original object that caused the error. - - - - Gets the member that caused the error. - - The member that caused the error. - - - - Gets the path of the JSON location where the error occurred. - - The path of the JSON location where the error occurred. - - - - Gets or sets a value indicating whether this is handled. - - true if handled; otherwise, false. - - - - Used by to resolves a for a given . - - - - - - - - - Resolves the contract for a given type. - - The type to resolve a contract for. - The contract for a given type. - - - - Provides methods to get and set values. - - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - Contract details for a used by the . - - - - - Gets the of the collection items. - - The of the collection items. - - - - Gets a value indicating whether the collection type is a multidimensional array. - - true if the collection type is a multidimensional array; otherwise, false. - - - - Gets or sets the function used to create the object. When set this function will override . - - The function used to create the object. - - - - Gets a value indicating whether the creator has a parameter with the collection values. - - true if the creator has a parameter with the collection values; otherwise, false. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Handles serialization callback events. - - The object that raised the callback event. - The streaming context. - - - - Handles serialization error callback events. - - The object that raised the callback event. - The streaming context. - The error context. - - - - Sets extension data for an object during deserialization. - - The object to set extension data on. - The extension data key. - The extension data value. - - - - Gets extension data for an object during serialization. - - The object to set extension data on. - - - - Contract details for a used by the . - - - - - Gets the underlying type for the contract. - - The underlying type for the contract. - - - - Gets or sets the type created during deserialization. - - The type created during deserialization. - - - - Gets or sets whether this type contract is serialized as a reference. - - Whether this type contract is serialized as a reference. - - - - Gets or sets the default for this contract. - - The converter. - - - - Gets or sets all methods called immediately after deserialization of the object. - - The methods called immediately after deserialization of the object. - - - - Gets or sets all methods called during deserialization of the object. - - The methods called during deserialization of the object. - - - - Gets or sets all methods called after serialization of the object graph. - - The methods called after serialization of the object graph. - - - - Gets or sets all methods called before serialization of the object. - - The methods called before serialization of the object. - - - - Gets or sets all method called when an error is thrown during the serialization of the object. - - The methods called when an error is thrown during the serialization of the object. - - - - Gets or sets the method called immediately after deserialization of the object. - - The method called immediately after deserialization of the object. - - - - Gets or sets the method called during deserialization of the object. - - The method called during deserialization of the object. - - - - Gets or sets the method called after serialization of the object graph. - - The method called after serialization of the object graph. - - - - Gets or sets the method called before serialization of the object. - - The method called before serialization of the object. - - - - Gets or sets the method called when an error is thrown during the serialization of the object. - - The method called when an error is thrown during the serialization of the object. - - - - Gets or sets the default creator method used to create the object. - - The default creator method used to create the object. - - - - Gets or sets a value indicating whether the default creator is non public. - - true if the default object creator is non-public; otherwise, false. - - - - Contract details for a used by the . - - - - - Gets or sets the property name resolver. - - The property name resolver. - - - - Gets or sets the dictionary key resolver. - - The dictionary key resolver. - - - - Gets the of the dictionary keys. - - The of the dictionary keys. - - - - Gets the of the dictionary values. - - The of the dictionary values. - - - - Gets or sets the function used to create the object. When set this function will override . - - The function used to create the object. - - - - Gets a value indicating whether the creator has a parameter with the dictionary values. - - true if the creator has a parameter with the dictionary values; otherwise, false. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Maps a JSON property to a .NET member or constructor parameter. - - - - - Gets or sets the name of the property. - - The name of the property. - - - - Gets or sets the type that declared this property. - - The type that declared this property. - - - - Gets or sets the order of serialization of a member. - - The numeric order of serialization. - - - - Gets or sets the name of the underlying member or parameter. - - The name of the underlying member or parameter. - - - - Gets the that will get and set the during serialization. - - The that will get and set the during serialization. - - - - Gets or sets the for this property. - - The for this property. - - - - Gets or sets the type of the property. - - The type of the property. - - - - Gets or sets the for the property. - If set this converter takes presidence over the contract converter for the property type. - - The converter. - - - - Gets or sets the member converter. - - The member converter. - - - - Gets or sets a value indicating whether this is ignored. - - true if ignored; otherwise, false. - - - - Gets or sets a value indicating whether this is readable. - - true if readable; otherwise, false. - - - - Gets or sets a value indicating whether this is writable. - - true if writable; otherwise, false. - - - - Gets or sets a value indicating whether this has a member attribute. - - true if has a member attribute; otherwise, false. - - - - Gets the default value. - - The default value. - - - - Gets or sets a value indicating whether this is required. - - A value indicating whether this is required. - - - - Gets or sets a value indicating whether this property preserves object references. - - - true if this instance is reference; otherwise, false. - - - - - Gets or sets the property null value handling. - - The null value handling. - - - - Gets or sets the property default value handling. - - The default value handling. - - - - Gets or sets the property reference loop handling. - - The reference loop handling. - - - - Gets or sets the property object creation handling. - - The object creation handling. - - - - Gets or sets or sets the type name handling. - - The type name handling. - - - - Gets or sets a predicate used to determine whether the property should be serialize. - - A predicate used to determine whether the property should be serialize. - - - - Gets or sets a predicate used to determine whether the property should be deserialized. - - A predicate used to determine whether the property should be deserialized. - - - - Gets or sets a predicate used to determine whether the property should be serialized. - - A predicate used to determine whether the property should be serialized. - - - - Gets or sets an action used to set whether the property has been deserialized. - - An action used to set whether the property has been deserialized. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Gets or sets the converter used when serializing the property's collection items. - - The collection's items converter. - - - - Gets or sets whether this property's collection items are serialized as a reference. - - Whether this property's collection items are serialized as a reference. - - - - Gets or sets the the type name handling used when serializing the property's collection items. - - The collection's items type name handling. - - - - Gets or sets the the reference loop handling used when serializing the property's collection items. - - The collection's items reference loop handling. - - - - A collection of objects. - - - - - Initializes a new instance of the class. - - The type. - - - - When implemented in a derived class, extracts the key from the specified element. - - The element from which to extract the key. - The key for the specified element. - - - - Adds a object. - - The property to add to the collection. - - - - Gets the closest matching object. - First attempts to get an exact case match of propertyName and then - a case insensitive match. - - Name of the property. - A matching property if found. - - - - Gets a property by property name. - - The name of the property to get. - Type property name string comparison. - A matching property if found. - - - - Used to resolve references when serializing and deserializing JSON by the . - - - - - Resolves a reference to its object. - - The serialization context. - The reference to resolve. - The object that - - - - Gets the reference for the sepecified object. - - The serialization context. - The object to get a reference for. - The reference to the object. - - - - Determines whether the specified object is referenced. - - The serialization context. - The object to test for a reference. - - true if the specified object is referenced; otherwise, false. - - - - - Adds a reference to the specified object. - - The serialization context. - The reference. - The object to reference. - - - - Contract details for a used by the . - - - - - Gets or sets the object member serialization. - - The member object serialization. - - - - Gets or sets a value that indicates whether the object's properties are required. - - - A value indicating whether the object's properties are required. - - - - - Gets the object's properties. - - The object's properties. - - - - Gets the constructor parameters required for any non-default constructor - - - - - Gets a collection of instances that define the parameters used with . - - - - - Gets or sets the override constructor used to create the object. - This is set when a constructor is marked up using the - JsonConstructor attribute. - - The override constructor. - - - - Gets or sets the parametrized constructor used to create the object. - - The parametrized constructor. - - - - Gets or sets the function used to create the object. When set this function will override . - This function is called with a collection of arguments which are defined by the collection. - - The function used to create the object. - - - - Gets or sets the extension data setter. - - - - - Gets or sets the extension data getter. - - - - - Gets or sets the extension data value type. - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Lookup and create an instance of the JsonConverter type described by the argument. - - The JsonConverter type to create. - Optional arguments to pass to an initializing constructor of the JsonConverter. - If null, the default constructor is used. - - - - Create a factory function that can be used to create instances of a JsonConverter described by the - argument type. The returned function can then be used to either invoke the converter's default ctor, or any - parameterized constructors by way of an object array. - - - - - Get and set values for a using reflection. - - - - - Initializes a new instance of the class. - - The member info. - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - When applied to a method, specifies that the method is called when an error occurs serializing an object. - - - - - Represents a method that constructs an object. - - The object type to create. - - - - Specifies how strings are escaped when writing JSON text. - - - - - Only control characters (e.g. newline) are escaped. - - - - - All non-ASCII and control characters (e.g. newline) are escaped. - - - - - HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. - - - - - Converts the value to the specified type. If the value is unable to be converted, the - value is checked whether it assignable to the specified type. - - The value to convert. - The culture to use when converting. - The type to convert or cast the value to. - - The converted type. If conversion was unsuccessful, the initial value - is returned if assignable to the target type. - - - - - Gets a dictionary of the names and values of an Enum type. - - - - - - Gets a dictionary of the names and values of an Enum type. - - The enum type to get names and values for. - - - - - Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. - - - - - Determines whether the collection is null or empty. - - The collection. - - true if the collection is null or empty; otherwise, false. - - - - - Adds the elements of the specified collection to the specified generic IList. - - The list to add to. - The collection of elements to add. - - - - Gets the type of the typed collection's items. - - The type. - The type of the typed collection's items. - - - - Gets the member's underlying type. - - The member. - The underlying type of the member. - - - - Determines whether the member is an indexed property. - - The member. - - true if the member is an indexed property; otherwise, false. - - - - - Determines whether the property is an indexed property. - - The property. - - true if the property is an indexed property; otherwise, false. - - - - - Gets the member's value on the object. - - The member. - The target object. - The member's value on the object. - - - - Sets the member's value on the target object. - - The member. - The target. - The value. - - - - Determines whether the specified MemberInfo can be read. - - The MemberInfo to determine whether can be read. - /// if set to true then allow the member to be gotten non-publicly. - - true if the specified MemberInfo can be read; otherwise, false. - - - - - Determines whether the specified MemberInfo can be set. - - The MemberInfo to determine whether can be set. - if set to true then allow the member to be set non-publicly. - if set to true then allow the member to be set if read-only. - - true if the specified MemberInfo can be set; otherwise, false. - - - - - Determines whether the string is all white space. Empty string will return false. - - The string to test whether it is all white space. - - true if the string is all white space; otherwise, false. - - - - - Nulls an empty string. - - The string. - Null if the string was null, otherwise the string unchanged. - - - - Indicating whether a property is required. - - - - - The property is not required. The default state. - - - - - The property must be defined in JSON but can be a null value. - - - - - The property must be defined in JSON and cannot be a null value. - - - - - The property is not required but it cannot be a null value. - - - - - Specifies reference handling options for the . - Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. - - - - - - - - Do not preserve references when serializing types. - - - - - Preserve references when serializing into a JSON object structure. - - - - - Preserve references when serializing into a JSON array structure. - - - - - Preserve references when serializing. - - - - - Provides an interface to enable a class to return line and position information. - - - - - Gets a value indicating whether the class can return line information. - - - true if LineNumber and LinePosition can be provided; otherwise, false. - - - - - Gets the current line number. - - The current line number or 0 if no line information is available (for example, HasLineInfo returns false). - - - - Gets the current line position. - - The current line position or 0 if no line information is available (for example, HasLineInfo returns false). - - - - Instructs the how to serialize the collection. - - - - - Gets or sets a value indicating whether null items are allowed in the collection. - - true if null items are allowed in the collection; otherwise, false. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with a flag indicating whether the array can contain null items - - A flag indicating whether the array can contain null items. - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Instructs the how to serialize the object. - - - - - Gets or sets the id. - - The id. - - - - Gets or sets the title. - - The title. - - - - Gets or sets the description. - - The description. - - - - Gets the collection's items converter. - - The collection's items converter. - - - - The parameter list to use when constructing the JsonConverter described by ItemConverterType. - If null, the default constructor is used. - When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, - order, and type of these parameters. - - - [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] - - - - - Gets or sets a value that indicates whether to preserve object references. - - - true to keep object reference; otherwise, false. The default is false. - - - - - Gets or sets a value that indicates whether to preserve collection's items references. - - - true to keep collection's items object references; otherwise, false. The default is false. - - - - - Gets or sets the reference loop handling used when serializing the collection's items. - - The reference loop handling. - - - - Gets or sets the type name handling used when serializing the collection's items. - - The type name handling. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Specifies default value handling options for the . - - - - - - - - - Include members where the member value is the same as the member's default value when serializing objects. - Included members are written to JSON. Has no effect when deserializing. - - - - - Ignore members where the member value is the same as the member's default value when serializing objects - so that is is not written to JSON. - This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, - decimals and floating point numbers; and false for booleans). The default value ignored can be changed by - placing the on the property. - - - - - Members with a default value but no JSON will be set to their default value when deserializing. - - - - - Ignore members where the member value is the same as the member's default value when serializing objects - and sets members to their default value when deserializing. - - - - - Instructs the to use the specified when serializing the member or class. - - - - - Gets the of the converter. - - The of the converter. - - - - The parameter list to use when constructing the JsonConverter described by ConverterType. - If null, the default constructor is used. - - - - - Initializes a new instance of the class. - - Type of the converter. - - - - Initializes a new instance of the class. - - Type of the converter. - Parameter list to use when constructing the JsonConverter. Can be null. - - - - Instructs the how to serialize the object. - - - - - Gets or sets the member serialization. - - The member serialization. - - - - Gets or sets a value that indicates whether the object's properties are required. - - - A value indicating whether the object's properties are required. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified member serialization. - - The member serialization. - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Specifies the settings on a object. - - - - - Gets or sets how reference loops (e.g. a class referencing itself) is handled. - - Reference loop handling. - - - - Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. - - Missing member handling. - - - - Gets or sets how objects are created during deserialization. - - The object creation handling. - - - - Gets or sets how null values are handled during serialization and deserialization. - - Null value handling. - - - - Gets or sets how null default are handled during serialization and deserialization. - - The default value handling. - - - - Gets or sets a collection that will be used during serialization. - - The converters. - - - - Gets or sets how object references are preserved by the serializer. - - The preserve references handling. - - - - Gets or sets how type name writing and reading is handled by the serializer. - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - The type name handling. - - - - Gets or sets how metadata properties are used during deserialization. - - The metadata properties handling. - - - - Gets or sets how a type name assembly is written and resolved by the serializer. - - The type name assembly format. - - - - Gets or sets how constructors are used during deserialization. - - The constructor handling. - - - - Gets or sets the contract resolver used by the serializer when - serializing .NET objects to JSON and vice versa. - - The contract resolver. - - - - Gets or sets the equality comparer used by the serializer when comparing references. - - The equality comparer. - - - - Gets or sets the used by the serializer when resolving references. - - The reference resolver. - - - - Gets or sets a function that creates the used by the serializer when resolving references. - - A function that creates the used by the serializer when resolving references. - - - - Gets or sets the used by the serializer when writing trace messages. - - The trace writer. - - - - Gets or sets the used by the serializer when resolving type names. - - The binder. - - - - Gets or sets the error handler called during serialization and deserialization. - - The error handler called during serialization and deserialization. - - - - Gets or sets the used by the serializer when invoking serialization callback methods. - - The context. - - - - Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling during serialization and deserialization. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written as JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Gets a value indicating whether there will be a check for additional content after deserializing an object. - - - true if there will be a check for additional content after deserializing an object; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Specifies the member serialization options for the . - - - - - All public members are serialized by default. Members can be excluded using or . - This is the default member serialization mode. - - - - - Only members marked with or are serialized. - This member serialization mode can also be set by marking the class with . - - - - - All public and private fields are serialized. Members can be excluded using or . - This member serialization mode can also be set by marking the class with - and setting IgnoreSerializableAttribute on to false. - - - - - Specifies how object creation is handled by the . - - - - - Reuse existing objects, create new objects when needed. - - - - - Only reuse existing objects. - - - - - Always create new objects. - - - - - Represents a reader that provides fast, non-cached, forward-only access to JSON text data. - - - - - Initializes a new instance of the class with the specified . - - The TextReader containing the XML data to read. - - - - Gets or sets the reader's character buffer pool. - - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a []. - - A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Changes the state to closed. - - - - - Gets a value indicating whether the class can return line information. - - - true if LineNumber and LinePosition can be provided; otherwise, false. - - - - - Gets the current line number. - - - The current line number or 0 if no line information is available (for example, HasLineInfo returns false). - - - - - Gets the current line position. - - - The current line position or 0 if no line information is available (for example, HasLineInfo returns false). - - - - - Instructs the to always serialize the member with the specified name. - - - - - Gets or sets the converter used when serializing the property's collection items. - - The collection's items converter. - - - - The parameter list to use when constructing the JsonConverter described by ItemConverterType. - If null, the default constructor is used. - When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, - order, and type of these parameters. - - - [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] - - - - - Gets or sets the null value handling used when serializing this property. - - The null value handling. - - - - Gets or sets the default value handling used when serializing this property. - - The default value handling. - - - - Gets or sets the reference loop handling used when serializing this property. - - The reference loop handling. - - - - Gets or sets the object creation handling used when deserializing this property. - - The object creation handling. - - - - Gets or sets the type name handling used when serializing this property. - - The type name handling. - - - - Gets or sets whether this property's value is serialized as a reference. - - Whether this property's value is serialized as a reference. - - - - Gets or sets the order of serialization of a member. - - The numeric order of serialization. - - - - Gets or sets a value indicating whether this property is required. - - - A value indicating whether this property is required. - - - - - Gets or sets the name of the property. - - The name of the property. - - - - Gets or sets the the reference loop handling used when serializing the property's collection items. - - The collection's items reference loop handling. - - - - Gets or sets the the type name handling used when serializing the property's collection items. - - The collection's items type name handling. - - - - Gets or sets whether this property's collection items are serialized as a reference. - - Whether this property's collection items are serialized as a reference. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified name. - - Name of the property. - - - - Instructs the not to serialize the public field or public read/write property value. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets the writer's character array pool. - - - - - Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. - - - - - Gets or sets which character to use to quote attribute values. - - - - - Gets or sets which character to use for indenting when is set to Formatting.Indented. - - - - - Gets or sets a value indicating whether object names will be surrounded with quotes. - - - - - Creates an instance of the JsonWriter class using the specified . - - The TextWriter to write to. - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the specified end token. - - The end token to write. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - A flag to indicate whether the text should be escaped when it is written as a JSON property name. - - - - Writes indent characters. - - - - - Writes the JSON value delimiter. - - - - - Writes an indent space. - - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes out the given white space. - - The string of white space characters. - - - - The exception thrown when an error occurs while reading JSON text. - - - - - Gets the path to the JSON where the error occurred. - - The path to the JSON where the error occurred. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - The exception thrown when an error occurs while reading JSON text. - - - - - Gets the line number indicating where the error occurred. - - The line number indicating where the error occurred. - - - - Gets the line position indicating where the error occurred. - - The line position indicating where the error occurred. - - - - Gets the path to the JSON where the error occurred. - - The path to the JSON where the error occurred. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - Converts an object to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can read JSON. - - true if this can read JSON; otherwise, false. - - - - Gets a value indicating whether this can write JSON. - - true if this can write JSON; otherwise, false. - - - - Represents a collection of . - - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Specifies the state of the reader. - - - - - The Read method has not been called. - - - - - The end of the file has been reached successfully. - - - - - Reader is at a property. - - - - - Reader is at the start of an object. - - - - - Reader is in an object. - - - - - Reader is at the start of an array. - - - - - Reader is in an array. - - - - - The Close method has been called. - - - - - Reader has just read a value. - - - - - Reader is at the start of a constructor. - - - - - Reader in a constructor. - - - - - An error occurred that prevents the read operation from continuing. - - - - - The end of the file has been reached successfully. - - - - - Gets the current reader state. - - The current reader state. - - - - Gets or sets a value indicating whether the underlying stream or - should be closed when the reader is closed. - - - true to close the underlying stream or when - the reader is closed; otherwise false. The default is true. - - - - - Gets or sets a value indicating whether multiple pieces of JSON content can - be read from a continuous stream without erroring. - - - true to support reading multiple pieces of JSON content; otherwise false. The default is false. - - - - - Gets the quotation mark character used to enclose the value of a string. - - - - - Get or set how time zones are handling when reading JSON. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how custom date formatted strings are parsed when reading JSON. - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Gets the type of the current JSON token. - - - - - Gets the text value of the current JSON token. - - - - - Gets The Common Language Runtime (CLR) type for the current JSON token. - - - - - Gets the depth of the current token in the JSON document. - - The depth of the current token in the JSON document. - - - - Gets the path of the current JSON token. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Initializes a new instance of the class with the specified . - - - - - Reads the next JSON token from the stream. - - true if the next token was read successfully; false if there are no more tokens to read. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a []. - - A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Skips the children of the current token. - - - - - Sets the current token. - - The new token. - - - - Sets the current token and value. - - The new token. - The value. - - - - Sets the state based on current token type. - - - - - Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. - - - - - Releases unmanaged and - optionally - managed resources - - true to release both managed and unmanaged resources; false to release only unmanaged resources. - - - - Changes the to Closed. - - - - - Provides methods for converting between common language runtime types and JSON types. - - - - - - - - Gets or sets a function that creates default . - Default settings are automatically used by serialization methods on , - and and on . - To serialize without using any default settings create a with - . - - - - - Represents JavaScript's boolean value true as a string. This field is read-only. - - - - - Represents JavaScript's boolean value false as a string. This field is read-only. - - - - - Represents JavaScript's null as a string. This field is read-only. - - - - - Represents JavaScript's undefined as a string. This field is read-only. - - - - - Represents JavaScript's positive infinity as a string. This field is read-only. - - - - - Represents JavaScript's negative infinity as a string. This field is read-only. - - - - - Represents JavaScript's NaN as a string. This field is read-only. - - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation using the specified. - - The value to convert. - The format the date will be converted to. - The time zone handling when the date is converted to a string. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation using the specified. - - The value to convert. - The format the date will be converted to. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - The string delimiter character. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - The string delimiter character. - The string escape handling. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Serializes the specified object to a JSON string. - - The object to serialize. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using formatting. - - The object to serialize. - Indicates how the output is formatted. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a collection of . - - The object to serialize. - A collection converters used while serializing. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using formatting and a collection of . - - The object to serialize. - Indicates how the output is formatted. - A collection converters used while serializing. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using . - - The object to serialize. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a type, formatting and . - - The object to serialize. - The used to serialize the object. - If this is null, default serialization settings will be used. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using formatting and . - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a type, formatting and . - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - A JSON string representation of the object. - - - - - Deserializes the JSON to a .NET object. - - The JSON to deserialize. - The deserialized object from the JSON string. - - - - Deserializes the JSON to a .NET object using . - - The JSON to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type. - - The JSON to deserialize. - The of object being deserialized. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type. - - The type of the object to deserialize to. - The JSON to deserialize. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the given anonymous type. - - - The anonymous type to deserialize to. This can't be specified - traditionally and must be infered from the anonymous type passed - as a parameter. - - The JSON to deserialize. - The anonymous type object. - The deserialized anonymous type from the JSON string. - - - - Deserializes the JSON to the given anonymous type using . - - - The anonymous type to deserialize to. This can't be specified - traditionally and must be infered from the anonymous type passed - as a parameter. - - The JSON to deserialize. - The anonymous type object. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized anonymous type from the JSON string. - - - - Deserializes the JSON to the specified .NET type using a collection of . - - The type of the object to deserialize to. - The JSON to deserialize. - Converters to use while deserializing. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using . - - The type of the object to deserialize to. - The object to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using a collection of . - - The JSON to deserialize. - The type of the object to deserialize. - Converters to use while deserializing. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using . - - The JSON to deserialize. - The type of the object to deserialize to. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Populates the object with values from the JSON string. - - The JSON to populate values from. - The target object to populate values onto. - - - - Populates the object with values from the JSON string using . - - The JSON to populate values from. - The target object to populate values onto. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - - - - Serializes the XML node to a JSON string. - - The node to serialize. - A JSON string of the XmlNode. - - - - Serializes the XML node to a JSON string using formatting. - - The node to serialize. - Indicates how the output is formatted. - A JSON string of the XmlNode. - - - - Serializes the XML node to a JSON string using formatting and omits the root object if is true. - - The node to serialize. - Indicates how the output is formatted. - Omits writing the root object. - A JSON string of the XmlNode. - - - - Deserializes the XmlNode from a JSON string. - - The JSON string. - The deserialized XmlNode - - - - Deserializes the XmlNode from a JSON string nested in a root elment specified by . - - The JSON string. - The name of the root element to append when deserializing. - The deserialized XmlNode - - - - Deserializes the XmlNode from a JSON string nested in a root elment specified by - and writes a .NET array attribute for collections. - - The JSON string. - The name of the root element to append when deserializing. - - A flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - The deserialized XmlNode - - - - Serializes the to a JSON string. - - The node to convert to JSON. - A JSON string of the XNode. - - - - Serializes the to a JSON string using formatting. - - The node to convert to JSON. - Indicates how the output is formatted. - A JSON string of the XNode. - - - - Serializes the to a JSON string using formatting and omits the root object if is true. - - The node to serialize. - Indicates how the output is formatted. - Omits writing the root object. - A JSON string of the XNode. - - - - Deserializes the from a JSON string. - - The JSON string. - The deserialized XNode - - - - Deserializes the from a JSON string nested in a root elment specified by . - - The JSON string. - The name of the root element to append when deserializing. - The deserialized XNode - - - - Deserializes the from a JSON string nested in a root elment specified by - and writes a .NET array attribute for collections. - - The JSON string. - The name of the root element to append when deserializing. - - A flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - The deserialized XNode - - - - The exception thrown when an error occurs during JSON serialization or deserialization. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - Serializes and deserializes objects into and from the JSON format. - The enables you to control how objects are encoded into JSON. - - - - - Occurs when the errors during serialization and deserialization. - - - - - Gets or sets the used by the serializer when resolving references. - - - - - Gets or sets the used by the serializer when resolving type names. - - - - - Gets or sets the used by the serializer when writing trace messages. - - The trace writer. - - - - Gets or sets the equality comparer used by the serializer when comparing references. - - The equality comparer. - - - - Gets or sets how type name writing and reading is handled by the serializer. - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - - - - Gets or sets how a type name assembly is written and resolved by the serializer. - - The type name assembly format. - - - - Gets or sets how object references are preserved by the serializer. - - - - - Get or set how reference loops (e.g. a class referencing itself) is handled. - - - - - Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. - - - - - Get or set how null values are handled during serialization and deserialization. - - - - - Get or set how null default are handled during serialization and deserialization. - - - - - Gets or sets how objects are created during deserialization. - - The object creation handling. - - - - Gets or sets how constructors are used during deserialization. - - The constructor handling. - - - - Gets or sets how metadata properties are used during deserialization. - - The metadata properties handling. - - - - Gets a collection that will be used during serialization. - - Collection that will be used during serialization. - - - - Gets or sets the contract resolver used by the serializer when - serializing .NET objects to JSON and vice versa. - - - - - Gets or sets the used by the serializer when invoking serialization callback methods. - - The context. - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling during serialization and deserialization. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written as JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. - - - true if there will be a check for additional JSON content after deserializing an object; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Creates a new instance. - The will not use default settings - from . - - - A new instance. - The will not use default settings - from . - - - - - Creates a new instance using the specified . - The will not use default settings - from . - - The settings to be applied to the . - - A new instance using the specified . - The will not use default settings - from . - - - - - Creates a new instance. - The will use default settings - from . - - - A new instance. - The will use default settings - from . - - - - - Creates a new instance using the specified . - The will use default settings - from as well as the specified . - - The settings to be applied to the . - - A new instance using the specified . - The will use default settings - from as well as the specified . - - - - - Populates the JSON values onto the target object. - - The that contains the JSON structure to reader values from. - The target object to populate values onto. - - - - Populates the JSON values onto the target object. - - The that contains the JSON structure to reader values from. - The target object to populate values onto. - - - - Deserializes the JSON structure contained by the specified . - - The that contains the JSON structure to deserialize. - The being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The of object being deserialized. - The instance of being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The type of the object to deserialize. - The instance of being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The of object being deserialized. - The instance of being deserialized. - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - - - Specifies missing member handling options for the . - - - - - Ignore a missing member and do not attempt to deserialize it. - - - - - Throw a when a missing member is encountered during deserialization. - - - - - Specifies null value handling options for the . - - - - - - - - - Include null values when serializing and deserializing objects. - - - - - Ignore null values when serializing and deserializing objects. - - - - - Specifies reference loop handling options for the . - - - - - Throw a when a loop is encountered. - - - - - Ignore loop references and do not serialize. - - - - - Serialize loop references. - - - - - Specifies type name handling options for the . - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - - - - Do not include the .NET type name when serializing types. - - - - - Include the .NET type name when serializing into a JSON object structure. - - - - - Include the .NET type name when serializing into a JSON array structure. - - - - - Always include the .NET type name when serializing. - - - - - Include the .NET type name when the type of the object being serialized is not the same as its declared type. - - - - - Specifies the type of JSON token. - - - - - This is returned by the if a method has not been called. - - - - - An object start token. - - - - - An array start token. - - - - - A constructor start token. - - - - - An object property name. - - - - - A comment. - - - - - Raw JSON. - - - - - An integer. - - - - - A float. - - - - - A string. - - - - - A boolean. - - - - - A null token. - - - - - An undefined token. - - - - - An object end token. - - - - - An array end token. - - - - - A constructor end token. - - - - - A Date. - - - - - Byte data. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets a value indicating whether the underlying stream or - should be closed when the writer is closed. - - - true to close the underlying stream or when - the writer is closed; otherwise false. The default is true. - - - - - Gets the top. - - The top. - - - - Gets the state of the writer. - - - - - Gets the path of the writer. - - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling when writing JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written to JSON text. - - - - - Get or set how and values are formatting when writing JSON text. - - - - - Gets or sets the culture used when writing JSON. Defaults to . - - - - - Creates an instance of the JsonWriter class. - - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the end of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the end of an array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the end constructor. - - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - A flag to indicate whether the text should be escaped when it is written as a JSON property name. - - - - Writes the end of the current JSON object or array. - - - - - Writes the current token and its children. - - The to read the token from. - - - - Writes the current token. - - The to read the token from. - A flag indicating whether the current token's children should be written. - - - - Writes the token and its value. - - The to write. - - The value to write. - A value is only required for tokens that have an associated value, e.g. the property name for . - A null value can be passed to the method for token's that don't have a value, e.g. . - - - - Writes the token. - - The to write. - - - - Writes the specified end token. - - The end token to write. - - - - Writes indent characters. - - - - - Writes the JSON value delimiter. - - - - - Writes an indent space. - - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON without changing the writer's state. - - The raw JSON to write. - - - - Writes raw JSON where a value is expected and updates the writer's state. - - The raw JSON to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes out the given white space. - - The string of white space characters. - - - - Releases unmanaged and - optionally - managed resources - - true to release both managed and unmanaged resources; false to release only unmanaged resources. - - - - Sets the state of the JsonWriter, - - The JsonToken being written. - The value being written. - - - - Specifies the state of the . - - - - - An exception has been thrown, which has left the in an invalid state. - You may call the method to put the in the Closed state. - Any other method calls results in an being thrown. - - - - - The method has been called. - - - - - An object is being written. - - - - - A array is being written. - - - - - A constructor is being written. - - - - - A property is being written. - - - - - A write method has not been called. - - - - + + + + Newtonsoft.Json + + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the class. + + The reader. + + + + Initializes a new instance of the class. + + The stream. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The reader. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the to Closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the class. + + The writer. + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this stream and the underlying stream. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Create a custom object + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + + + + + + + + + + + + + + + + + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed. + + true if integers are allowed; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Json Converter for Vector2, Vector3 and Vector4. Only serializes x, y, (z) and (w) properties. + + + + + Default Constructor - All Vector types enabled by default + + + + + Selectively enable Vector types + + Use for Vector2 objects + Use for Vector3 objects + Use for Vector4 objects + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. + + The name of the deserialize root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attibute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the attributeName is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + True if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a paramatized constructor. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent a array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the to always serialize the member, and require the member has a value. + + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. When the or methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Specifies the settings used when loading JSON. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how how null value properties are merged. + + How null value properties are merged. + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Represents a collection of objects. + + The type of token + + + + Gets the with the specified key. + + + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates an that can be used to add tokens to the . + + An that is ready to have content written to it. + + + + Replaces the children nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens + + + + Represents a collection of objects. + + The type of token + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Gets the with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of this object's properties. + + An of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets an of this object's property values. + + An of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries the get value. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the properties for this instance of a component. + + + A that represents the properties for this component instance. + + + + + Returns the properties for this instance of a component using the attribute array as a filter. + + An array of type that is used as a filter. + + A that represents the filtered properties for this component instance. + + + + + Returns a collection of custom attributes for this instance of a component. + + + An containing the attributes for this object. + + + + + Returns the class name of this instance of a component. + + + The class name of the object, or null if the class does not have a name. + + + + + Returns the name of this instance of a component. + + + The name of the object, or null if the object does not have a name. + + + + + Returns a type converter for this instance of a component. + + + A that is the converter for this object, or null if there is no for this object. + + + + + Returns the default event for this instance of a component. + + + An that represents the default event for this object, or null if this object does not have events. + + + + + Returns the default property for this instance of a component. + + + A that represents the default property for this object, or null if this object does not have properties. + + + + + Returns an editor of the specified type for this instance of a component. + + A that represents the editor for this object. + + An of the specified type that is the editor for this object, or null if the editor cannot be found. + + + + + Returns the events for this instance of a component using the specified attribute array as a filter. + + An array of type that is used as a filter. + + An that represents the filtered events for this component instance. + + + + + Returns the events for this instance of a component. + + + An that represents the events for this component instance. + + + + + Returns an object that contains the property described by the specified property descriptor. + + A that represents the property whose owner is to be found. + + An that represents the owner of the specified property. + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + The is read-only. + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + The is read-only. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + The is read-only. + + + + Removes all items from the . + + The is read-only. + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies to. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + The is read-only. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being writen. + + The token being writen. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output is formatted. + A collection of which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Creates an for this token. + + An that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object + + + + Creates the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + An positioned at the token to read into this . + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An that contains the selected elements. + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + The parameter is null. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not the same type as this instance. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Contract details for a used by the . + + + + + Gets or sets the ISerializable object constructor. + + The ISerializable object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the name of the property. + + Name of the property. + The property name camel cased. + + + + Used by to resolves a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + If set to true the will use a cached shared with other resolvers of the same type. + Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only + happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different + results. When set to false it is highly recommended to reuse instances with the . + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Used by to resolves a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the method called immediately after deserialization of the object. + + The method called immediately after deserialization of the object. + + + + Gets or sets the method called during deserialization of the object. + + The method called during deserialization of the object. + + + + Gets or sets the method called after serialization of the object graph. + + The method called after serialization of the object graph. + + + + Gets or sets the method called before serialization of the object. + + The method called before serialization of the object. + + + + Gets or sets the method called when an error is thrown during the serialization of the object. + + The method called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes presidence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialize. + + A predicate used to determine whether the property should be serialize. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of propertyName and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that + + + + Gets the reference for the sepecified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets the object's properties. + + The object's properties. + + + + Gets the constructor parameters required for any non-default constructor + + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the override constructor used to create the object. + This is set when a constructor is marked up using the + JsonConstructor attribute. + + The override constructor. + + + + Gets or sets the parametrized constructor used to create the object. + + The parametrized constructor. + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the JsonConverter type described by the argument. + + The JsonConverter type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Create a factory function that can be used to create instances of a JsonConverter described by the + argument type. The returned function can then be used to either invoke the converter's default ctor, or any + parameterized constructors by way of an object array. + + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Represents a method that constructs an object. + + The object type to create. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Gets a dictionary of the names and values of an Enum type. + + + + + + Gets a dictionary of the names and values of an Enum type. + + The enum type to get names and values for. + + + + + Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic IList. + + The list to add to. + The collection of elements to add. + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Nulls an empty string. + + The string. + Null if the string was null, otherwise the string unchanged. + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if LineNumber and LinePosition can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, HasLineInfo returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, HasLineInfo returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the JsonConverter described by ItemConverterType. + If null, the default constructor is used. + When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, + order, and type of these parameters. + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that is is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and sets members to their default value when deserializing. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the converter. + + The of the converter. + + + + The parameter list to use when constructing the JsonConverter described by ConverterType. + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the converter. + + + + Initializes a new instance of the class. + + Type of the converter. + Parameter list to use when constructing the JsonConverter. Can be null. + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + + Null value handling. + + + + Gets or sets how null default are handled during serialization and deserialization. + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling during serialization and deserialization. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written as JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The TextReader containing the XML data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a []. + + A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Changes the state to closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if LineNumber and LinePosition can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, HasLineInfo returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, HasLineInfo returns false). + + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + The parameter list to use when constructing the JsonConverter described by ItemConverterType. + If null, the default constructor is used. + When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, + order, and type of these parameters. + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to Formatting.Indented. + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Creates an instance of the JsonWriter class using the specified . + + The TextWriter to write to. + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes out the given white space. + + The string of white space characters. + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Represents a collection of . + + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + The Read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The Close method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the underlying stream or + should be closed when the reader is closed. + + + true to close the underlying stream or when + the reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Get or set how time zones are handling when reading JSON. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets The Common Language Runtime (CLR) type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class with the specified . + + + + + Reads the next JSON token from the stream. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a []. + + A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the state based on current token type. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the to Closed. + + + + + Provides methods for converting between common language runtime types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output is formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output is formatted. + A collection converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be infered from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be infered from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the XML node to a JSON string. + + The node to serialize. + A JSON string of the XmlNode. + + + + Serializes the XML node to a JSON string using formatting. + + The node to serialize. + Indicates how the output is formatted. + A JSON string of the XmlNode. + + + + Serializes the XML node to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output is formatted. + Omits writing the root object. + A JSON string of the XmlNode. + + + + Deserializes the XmlNode from a JSON string. + + The JSON string. + The deserialized XmlNode + + + + Deserializes the XmlNode from a JSON string nested in a root elment specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized XmlNode + + + + Deserializes the XmlNode from a JSON string nested in a root elment specified by + and writes a .NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized XmlNode + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the XNode. + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output is formatted. + A JSON string of the XNode. + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output is formatted. + Omits writing the root object. + A JSON string of the XNode. + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized XNode + + + + Deserializes the from a JSON string nested in a root elment specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized XNode + + + + Deserializes the from a JSON string nested in a root elment specified by + and writes a .NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized XNode + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + + + + + Get or set how reference loops (e.g. a class referencing itself) is handled. + + + + + Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + + + + + Get or set how null values are handled during serialization and deserialization. + + + + + Get or set how null default are handled during serialization and deserialization. + + + + + Gets or sets how objects are created during deserialization. + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling during serialization and deserialization. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written as JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + + + + + Specifies the type of JSON token. + + + + + This is returned by the if a method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the underlying stream or + should be closed when the writer is closed. + + + true to close the underlying stream or when + the writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling when writing JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Get or set how and values are formatting when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Creates an instance of the JsonWriter class. + + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + A null value can be passed to the method for token's that don't have a value, e.g. . + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes out the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the JsonWriter, + + The JsonToken being written. + The value being written. + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls results in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + A array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML.meta index 35c0a27..0e2097f --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.XML.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: aadad8ac54f29e44583510294ac5c312 -timeCreated: 1466788355 -licenseType: Store -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: aadad8ac54f29e44583510294ac5c312 +timeCreated: 1466788355 +licenseType: Store +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll.meta old mode 100755 new mode 100644 similarity index 94% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll.meta index c98ece8..ea21e1f --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/AOT/Newtonsoft.Json.dll.meta @@ -1,76 +1,76 @@ -fileFormatVersion: 2 -guid: 6a3c684705042f345975d924f6983e36 -timeCreated: 1466788352 -licenseType: Store -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - platformData: - Android: - enabled: 1 - settings: - CPU: AnyCPU - Any: - enabled: 0 - settings: {} - Editor: - enabled: 0 - settings: - CPU: AnyCPU - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 0 - settings: - CPU: x86 - Linux64: - enabled: 0 - settings: - CPU: x86_64 - OSXIntel: - enabled: 0 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 0 - settings: - CPU: AnyCPU - SamsungTV: - enabled: 1 - settings: - STV_MODEL: STANDARD_13 - Tizen: - enabled: 1 - settings: {} - WebGL: - enabled: 1 - settings: {} - Win: - enabled: 0 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: AnyCPU - WindowsStoreApps: - enabled: 1 - settings: - CPU: AnyCPU - DontProcess: False - PlaceholderPath: Assets/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll - SDK: AnySDK - ScriptingBackend: Il2Cpp - iOS: - enabled: 1 - settings: - CompileFlags: - FrameworkDependencies: - tvOS: - enabled: 1 - settings: {} - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 6a3c684705042f345975d924f6983e36 +timeCreated: 1466788352 +licenseType: Store +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + platformData: + Android: + enabled: 1 + settings: + CPU: AnyCPU + Any: + enabled: 0 + settings: {} + Editor: + enabled: 0 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + Linux: + enabled: 0 + settings: + CPU: x86 + Linux64: + enabled: 0 + settings: + CPU: x86_64 + OSXIntel: + enabled: 0 + settings: + CPU: AnyCPU + OSXIntel64: + enabled: 0 + settings: + CPU: AnyCPU + SamsungTV: + enabled: 1 + settings: + STV_MODEL: STANDARD_13 + Tizen: + enabled: 1 + settings: {} + WebGL: + enabled: 1 + settings: {} + Win: + enabled: 0 + settings: + CPU: AnyCPU + Win64: + enabled: 0 + settings: + CPU: AnyCPU + WindowsStoreApps: + enabled: 1 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: Assets/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll + SDK: AnySDK + ScriptingBackend: Il2Cpp + iOS: + enabled: 1 + settings: + CompileFlags: + FrameworkDependencies: + tvOS: + enabled: 1 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone.meta index 24efa72..242f110 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 01ef782d02bb1994dbe418b69432552b -folderAsset: yes -timeCreated: 1466788344 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 01ef782d02bb1994dbe418b69432552b +folderAsset: yes +timeCreated: 1466788344 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML old mode 100755 new mode 100644 similarity index 98% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML index f5a5a04..4dbcd9e --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML @@ -1,8040 +1,8040 @@ - - - - Newtonsoft.Json - - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. - - - true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. - - - - - Gets or sets a value indicating whether the root object will be read as a JSON array. - - - true if the root object will be read as a JSON array; otherwise, false. - - - - - Gets or sets the used when reading values from BSON. - - The used when reading values from BSON. - - - - Initializes a new instance of the class. - - The stream. - - - - Initializes a new instance of the class. - - The reader. - - - - Initializes a new instance of the class. - - The stream. - if set to true the root object will be read as a JSON array. - The used when reading values from BSON. - - - - Initializes a new instance of the class. - - The reader. - if set to true the root object will be read as a JSON array. - The used when reading values from BSON. - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Changes the to Closed. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets the used when writing values to BSON. - When set to no conversion will occur. - - The used when writing values to BSON. - - - - Initializes a new instance of the class. - - The stream. - - - - Initializes a new instance of the class. - - The writer. - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Writes the end. - - The token. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes raw JSON where a value is expected and updates the writer's state. - - The raw JSON to write. - - - - Writes the beginning of a JSON array. - - - - - Writes the beginning of a JSON object. - - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Closes this stream and the underlying stream. - - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value that represents a BSON object id. - - The Object ID value to write. - - - - Writes a BSON regex. - - The regex pattern. - The regex options. - - - - Represents a BSON Oid (object id). - - - - - Gets or sets the value of the Oid. - - The value of the Oid. - - - - Initializes a new instance of the class. - - The Oid value. - - - - Converts a binary value to and from a base 64 string value. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Create a custom object - - The object type to convert. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Creates an object which will then be populated by the serializer. - - Type of the object. - The created object. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can write JSON. - - - true if this can write JSON; otherwise, false. - - - - - Provides a base class for converting a to and from JSON. - - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - - - - - - - - - - - - - - - - - - - - - Converts a to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from JSON and BSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from JSON and BSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts an to and from its name string value. - - - - - Gets or sets a value indicating whether the written enum text should be camel case. - - true if the written enum text will be camel case; otherwise, false. - - - - Gets or sets a value indicating whether integer values are allowed. - - true if integers are allowed; otherwise, false. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - true if the written enum text will be camel case; otherwise, false. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Json Converter for Vector2, Vector3 and Vector4. Only serializes x, y, (z) and (w) properties. - - - - - Default Constructor - All Vector types enabled by default - - - - - Selectively enable Vector types - - Use for Vector2 objects - Use for Vector3 objects - Use for Vector4 objects - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Converts a to and from a string (e.g. "1.2.3.4"). - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing property value of the JSON that is being converted. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). - - - - - Gets or sets the date time styles used when converting a date to and from JSON. - - The date time styles used when converting a date to and from JSON. - - - - Gets or sets the date time format used when converting a date to and from JSON. - - The date time format used when converting a date to and from JSON. - - - - Gets or sets the culture used when converting a date to and from JSON. - - The culture used when converting a date to and from JSON. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing property value of the JSON that is being converted. - The calling serializer. - The object value. - - - - Converts XML to and from JSON. - - - - - Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. - - The name of the deserialize root element. - - - - Gets or sets a flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - true if the array attibute is written to the XML; otherwise, false. - - - - Gets or sets a value indicating whether to write the root JSON object. - - true if the JSON root object is omitted; otherwise, false. - - - - Writes the JSON representation of the object. - - The to write to. - The calling serializer. - The value. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Checks if the attributeName is a namespace attribute. - - Attribute name to test. - The attribute name prefix if it has one, otherwise an empty string. - True if attribute name is for a namespace attribute, otherwise false. - - - - Determines whether this instance can convert the specified value type. - - Type of the value. - - true if this instance can convert the specified value type; otherwise, false. - - - - - Specifies how constructors are used when initializing objects during deserialization by the . - - - - - First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. - - - - - Json.NET will use a non-public default constructor before falling back to a paramatized constructor. - - - - - Specifies how dates are formatted when writing JSON text. - - - - - Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". - - - - - Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". - - - - - Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. - - - - - Date formatted strings are not parsed to a date type and are read as strings. - - - - - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - - - - - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - - - - - Specifies how to treat the time value when converting between string and . - - - - - Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. - - - - - Treat as a UTC. If the object represents a local time, it is converted to a UTC. - - - - - Treat as a local time if a is being converted to a string. - If a string is being converted to , convert to a local time if a time zone is specified. - - - - - Time zone information should be preserved when converting. - - - - - Specifies float format handling options when writing special floating point numbers, e.g. , - and with . - - - - - Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". - - - - - Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. - Note that this will produce non-valid JSON. - - - - - Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. - - - - - Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Floating point numbers are parsed to . - - - - - Floating point numbers are parsed to . - - - - - Specifies formatting options for the . - - - - - No special formatting is applied. This is the default. - - - - - Causes child objects to be indented according to the and settings. - - - - - Provides an interface for using pooled arrays. - - The array type content. - - - - Rent a array from the pool. This array must be returned when it is no longer needed. - - The minimum required length of the array. The returned array may be longer. - The rented array from the pool. This array must be returned when it is no longer needed. - - - - Return an array to the pool. - - The array that is being returned. - - - - Instructs the to use the specified constructor when deserializing that object. - - - - - Instructs the how to serialize the collection. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - The exception thrown when an error occurs during JSON serialization or deserialization. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - Instructs the to deserialize properties with no matching class member into the specified collection - and write values during serialization. - - - - - Gets or sets a value that indicates whether to write extension data when serializing the object. - - - true to write extension data when serializing the object; otherwise, false. The default is true. - - - - - Gets or sets a value that indicates whether to read extension data when deserializing the object. - - - true to read extension data when deserializing the object; otherwise, false. The default is true. - - - - - Initializes a new instance of the class. - - - - - Instructs the to always serialize the member, and require the member has a value. - - - - - Specifies how JSON comments are handled when loading JSON. - - - - - Ignore comments. - - - - - Load comments as a with type . - - - - - Specifies how line information is handled when loading JSON. - - - - - Ignore line information. - - - - - Load line information. - - - - - Represents a view of a . - - - - - Initializes a new instance of the class. - - The name. - - - - When overridden in a derived class, returns whether resetting an object changes its value. - - - true if resetting the component changes its value; otherwise, false. - - The component to test for reset capability. - - - - - When overridden in a derived class, gets the current value of the property on a component. - - - The value of a property for a given component. - - The component with the property for which to retrieve the value. - - - - - When overridden in a derived class, resets the value for this property of the component to the default value. - - The component with the property value that is to be reset to the default value. - - - - - When overridden in a derived class, sets the value of the component to a different value. - - The component with the property value that is to be set. - The new value. - - - - - When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. - - - true if the property should be persisted; otherwise, false. - - The component with the property to be examined for persistence. - - - - - When overridden in a derived class, gets the type of the component this property is bound to. - - - A that represents the type of component this property is bound to. When the or methods are invoked, the object specified might be an instance of this type. - - - - - When overridden in a derived class, gets a value indicating whether this property is read-only. - - - true if the property is read-only; otherwise, false. - - - - - When overridden in a derived class, gets the type of the property. - - - A that represents the type of the property. - - - - - Gets the hash code for the name of the member. - - - - The hash code for the name of the member. - - - - - Specifies the settings used when loading JSON. - - - - - Gets or sets how JSON comments are handled when loading JSON. - - The JSON comment handling. - - - - Gets or sets how JSON line info is handled when loading JSON. - - The JSON line info handling. - - - - Specifies the settings used when merging JSON. - - - - - Gets or sets the method used when merging JSON arrays. - - The method used when merging JSON arrays. - - - - Gets or sets how how null value properties are merged. - - How null value properties are merged. - - - - Specifies how JSON arrays are merged together. - - - - Concatenate arrays. - - - Union arrays, skipping items that already exist. - - - Replace all array items. - - - Merge array items together, matched by index. - - - - Specifies how null value properties are merged. - - - - - The content's null value properties will be ignored during merging. - - - - - The content's null value properties will be merged. - - - - - Represents a raw JSON string. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class. - - The raw json. - - - - Creates an instance of with the content of the reader's current token. - - The reader. - An instance of with the content of the reader's current token. - - - - Represents a collection of objects. - - The type of token - - - - Gets the with the specified key. - - - - - - Compares tokens to determine whether they are equal. - - - - - Determines whether the specified objects are equal. - - The first object of type to compare. - The second object of type to compare. - - true if the specified objects are equal; otherwise, false. - - - - - Returns a hash code for the specified object. - - The for which a hash code is to be returned. - A hash code for the specified object. - The type of is a reference type and is null. - - - - Contains the LINQ to JSON extension methods. - - - - - Returns a collection of tokens that contains the ancestors of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains the ancestors of every token in the source collection. - - - - Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains every token in the source collection, the ancestors of every token in the source collection. - - - - Returns a collection of tokens that contains the descendants of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains the descendants of every token in the source collection. - - - - Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains every token in the source collection, and the descendants of every token in the source collection. - - - - Returns a collection of child properties of every object in the source collection. - - An of that contains the source collection. - An of that contains the properties of every object in the source collection. - - - - Returns a collection of child values of every object in the source collection with the given key. - - An of that contains the source collection. - The token key. - An of that contains the values of every token in the source collection with the given key. - - - - Returns a collection of child values of every object in the source collection. - - An of that contains the source collection. - An of that contains the values of every token in the source collection. - - - - Returns a collection of converted child values of every object in the source collection with the given key. - - The type to convert the values to. - An of that contains the source collection. - The token key. - An that contains the converted values of every token in the source collection with the given key. - - - - Returns a collection of converted child values of every object in the source collection. - - The type to convert the values to. - An of that contains the source collection. - An that contains the converted values of every token in the source collection. - - - - Converts the value. - - The type to convert the value to. - A cast as a of . - A converted value. - - - - Converts the value. - - The source collection type. - The type to convert the value to. - A cast as a of . - A converted value. - - - - Returns a collection of child tokens of every array in the source collection. - - The source collection type. - An of that contains the source collection. - An of that contains the values of every token in the source collection. - - - - Returns a collection of converted child tokens of every array in the source collection. - - An of that contains the source collection. - The type to convert the values to. - The source collection type. - An that contains the converted values of every token in the source collection. - - - - Returns the input typed as . - - An of that contains the source collection. - The input typed as . - - - - Returns the input typed as . - - The source collection type. - An of that contains the source collection. - The input typed as . - - - - Represents a JSON constructor. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets or sets the name of this constructor. - - The constructor name. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified name and content. - - The constructor name. - The contents of the constructor. - - - - Initializes a new instance of the class with the specified name and content. - - The constructor name. - The contents of the constructor. - - - - Initializes a new instance of the class with the specified name. - - The constructor name. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified key. - - The with the specified key. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Represents a token that can contain other tokens. - - - - - Occurs when the list changes or an item in the list changes. - - - - - Occurs before an item is added to the collection. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Raises the event. - - The instance containing the event data. - - - - Raises the event. - - The instance containing the event data. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Get the first child token of this token. - - - A containing the first child token of the . - - - - - Get the last child token of this token. - - - A containing the last child token of the . - - - - - Returns a collection of the child tokens of this token, in document order. - - - An of containing the child tokens of this , in document order. - - - - - Returns a collection of the child values of this token, in document order. - - The type to convert the values to. - - A containing the child values of this , in document order. - - - - - Returns a collection of the descendant tokens for this token in document order. - - An containing the descendant tokens of the . - - - - Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. - - An containing this token, and all the descendant tokens of the . - - - - Adds the specified content as children of this . - - The content to be added. - - - - Adds the specified content as the first children of this . - - The content to be added. - - - - Creates an that can be used to add tokens to the . - - An that is ready to have content written to it. - - - - Replaces the children nodes of this token with the specified content. - - The content. - - - - Removes the child nodes from this token. - - - - - Merge the specified content into this . - - The content to be merged. - - - - Merge the specified content into this using . - - The content to be merged. - The used to merge the content. - - - - Gets the count of child JSON tokens. - - The count of child JSON tokens - - - - Represents a collection of objects. - - The type of token - - - - An empty collection of objects. - - - - - Initializes a new instance of the struct. - - The enumerable. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - - - - Gets the with the specified key. - - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - Represents a JSON object. - - - - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Occurs when a property value changes. - - - - - Occurs when a property value is changing. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified content. - - The contents of the object. - - - - Initializes a new instance of the class with the specified content. - - The contents of the object. - - - - Gets the node type for this . - - The type. - - - - Gets an of this object's properties. - - An of this object's properties. - - - - Gets a the specified name. - - The property name. - A with the specified name or null. - - - - Gets an of this object's property values. - - An of this object's property values. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets or sets the with the specified property name. - - - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - - - - Creates a from an object. - - The object that will be used to create . - A with the values of the specified object - - - - Creates a from an object. - - The object that will be used to create . - The that will be used to read the object. - A with the values of the specified object - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified property name. - - Name of the property. - The with the specified property name. - - - - Gets the with the specified property name. - The exact property name will be searched for first and if no matching property is found then - the will be used to match a property. - - Name of the property. - One of the enumeration values that specifies how the strings will be compared. - The with the specified property name. - - - - Tries to get the with the specified property name. - The exact property name will be searched for first and if no matching property is found then - the will be used to match a property. - - Name of the property. - The value. - One of the enumeration values that specifies how the strings will be compared. - true if a value was successfully retrieved; otherwise, false. - - - - Adds the specified property name. - - Name of the property. - The value. - - - - Removes the property with the specified name. - - Name of the property. - true if item was successfully removed; otherwise, false. - - - - Tries the get value. - - Name of the property. - The value. - true if a value was successfully retrieved; otherwise, false. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Raises the event with the provided arguments. - - Name of the property. - - - - Raises the event with the provided arguments. - - Name of the property. - - - - Returns the properties for this instance of a component. - - - A that represents the properties for this component instance. - - - - - Returns the properties for this instance of a component using the attribute array as a filter. - - An array of type that is used as a filter. - - A that represents the filtered properties for this component instance. - - - - - Returns a collection of custom attributes for this instance of a component. - - - An containing the attributes for this object. - - - - - Returns the class name of this instance of a component. - - - The class name of the object, or null if the class does not have a name. - - - - - Returns the name of this instance of a component. - - - The name of the object, or null if the object does not have a name. - - - - - Returns a type converter for this instance of a component. - - - A that is the converter for this object, or null if there is no for this object. - - - - - Returns the default event for this instance of a component. - - - An that represents the default event for this object, or null if this object does not have events. - - - - - Returns the default property for this instance of a component. - - - A that represents the default property for this object, or null if this object does not have properties. - - - - - Returns an editor of the specified type for this instance of a component. - - A that represents the editor for this object. - - An of the specified type that is the editor for this object, or null if the editor cannot be found. - - - - - Returns the events for this instance of a component using the specified attribute array as a filter. - - An array of type that is used as a filter. - - An that represents the filtered events for this component instance. - - - - - Returns the events for this instance of a component. - - - An that represents the events for this component instance. - - - - - Returns an object that contains the property described by the specified property descriptor. - - A that represents the property whose owner is to be found. - - An that represents the owner of the specified property. - - - - - Represents a JSON array. - - - - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified content. - - The contents of the array. - - - - Initializes a new instance of the class with the specified content. - - The contents of the array. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - - - - Creates a from an object. - - The object that will be used to create . - A with the values of the specified object - - - - Creates a from an object. - - The object that will be used to create . - The that will be used to read the object. - A with the values of the specified object - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets or sets the at the specified index. - - - - - - Determines the index of a specific item in the . - - The object to locate in the . - - The index of if found in the list; otherwise, -1. - - - - - Inserts an item to the at the specified index. - - The zero-based index at which should be inserted. - The object to insert into the . - - is not a valid index in the . - The is read-only. - - - - Removes the item at the specified index. - - The zero-based index of the item to remove. - - is not a valid index in the . - The is read-only. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Adds an item to the . - - The object to add to the . - The is read-only. - - - - Removes all items from the . - - The is read-only. - - - - Determines whether the contains a specific value. - - The object to locate in the . - - true if is found in the ; otherwise, false. - - - - - Copies to. - - The array. - Index of the array. - - - - Gets a value indicating whether the is read-only. - - true if the is read-only; otherwise, false. - - - - Removes the first occurrence of a specific object from the . - - The object to remove from the . - - true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . - - The is read-only. - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Gets the at the reader's current position. - - - - - Initializes a new instance of the class. - - The token to read from. - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Gets the path of the current JSON token. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets the at the writer's current position. - - - - - Gets the token being writen. - - The token being writen. - - - - Initializes a new instance of the class writing to the given . - - The container being written to. - - - - Initializes a new instance of the class. - - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the end. - - The token. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Represents an abstract JSON token. - - - - - Gets a comparer that can compare two tokens for value equality. - - A that can compare two nodes for value equality. - - - - Gets or sets the parent. - - The parent. - - - - Gets the root of this . - - The root of this . - - - - Gets the node type for this . - - The type. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Compares the values of two tokens, including the values of all descendant tokens. - - The first to compare. - The second to compare. - true if the tokens are equal; otherwise false. - - - - Gets the next sibling token of this node. - - The that contains the next sibling token. - - - - Gets the previous sibling token of this node. - - The that contains the previous sibling token. - - - - Gets the path of the JSON token. - - - - - Adds the specified content immediately after this token. - - A content object that contains simple content or a collection of content objects to be added after this token. - - - - Adds the specified content immediately before this token. - - A content object that contains simple content or a collection of content objects to be added before this token. - - - - Returns a collection of the ancestor tokens of this token. - - A collection of the ancestor tokens of this token. - - - - Returns a collection of tokens that contain this token, and the ancestors of this token. - - A collection of tokens that contain this token, and the ancestors of this token. - - - - Returns a collection of the sibling tokens after this token, in document order. - - A collection of the sibling tokens after this tokens, in document order. - - - - Returns a collection of the sibling tokens before this token, in document order. - - A collection of the sibling tokens before this token, in document order. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets the with the specified key converted to the specified type. - - The type to convert the token to. - The token key. - The converted token value. - - - - Get the first child token of this token. - - A containing the first child token of the . - - - - Get the last child token of this token. - - A containing the last child token of the . - - - - Returns a collection of the child tokens of this token, in document order. - - An of containing the child tokens of this , in document order. - - - - Returns a collection of the child tokens of this token, in document order, filtered by the specified type. - - The type to filter the child tokens on. - A containing the child tokens of this , in document order. - - - - Returns a collection of the child values of this token, in document order. - - The type to convert the values to. - A containing the child values of this , in document order. - - - - Removes this token from its parent. - - - - - Replaces this token with the specified token. - - The value. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Returns the indented JSON for this token. - - - The indented JSON for this token. - - - - - Returns the JSON for this token using the given formatting and converters. - - Indicates how the output is formatted. - A collection of which will be used when writing the token. - The JSON for this token using the given formatting and converters. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to []. - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from [] to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Creates an for this token. - - An that can be used to read this token and its descendants. - - - - Creates a from an object. - - The object that will be used to create . - A with the value of the specified object - - - - Creates a from an object using the specified . - - The object that will be used to create . - The that will be used when reading the object. - A with the value of the specified object - - - - Creates the specified .NET type from the . - - The object type that the token will be deserialized to. - The new object created from the JSON value. - - - - Creates the specified .NET type from the . - - The object type that the token will be deserialized to. - The new object created from the JSON value. - - - - Creates the specified .NET type from the using the specified . - - The object type that the token will be deserialized to. - The that will be used when creating the object. - The new object created from the JSON value. - - - - Creates the specified .NET type from the using the specified . - - The object type that the token will be deserialized to. - The that will be used when creating the object. - The new object created from the JSON value. - - - - Creates a from a . - - An positioned at the token to read into this . - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Creates a from a . - - An positioned at the token to read into this . - The used to load the JSON. - If this is null, default load settings will be used. - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - Creates a from a . - - An positioned at the token to read into this . - The used to load the JSON. - If this is null, default load settings will be used. - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Creates a from a . - - An positioned at the token to read into this . - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Selects a using a JPath expression. Selects the token that matches the object path. - - - A that contains a JPath expression. - - A , or null. - - - - Selects a using a JPath expression. Selects the token that matches the object path. - - - A that contains a JPath expression. - - A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. - A . - - - - Selects a collection of elements using a JPath expression. - - - A that contains a JPath expression. - - An that contains the selected elements. - - - - Selects a collection of elements using a JPath expression. - - - A that contains a JPath expression. - - A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. - An that contains the selected elements. - - - - Creates a new instance of the . All child tokens are recursively cloned. - - A new instance of the . - - - - Adds an object to the annotation list of this . - - The annotation to add. - - - - Get the first annotation object of the specified type from this . - - The type of the annotation to retrieve. - The first annotation object that matches the specified type, or null if no annotation is of the specified type. - - - - Gets the first annotation object of the specified type from this . - - The of the annotation to retrieve. - The first annotation object that matches the specified type, or null if no annotation is of the specified type. - - - - Gets a collection of annotations of the specified type for this . - - The type of the annotations to retrieve. - An that contains the annotations for this . - - - - Gets a collection of annotations of the specified type for this . - - The of the annotations to retrieve. - An of that contains the annotations that match the specified type for this . - - - - Removes the annotations of the specified type from this . - - The type of annotations to remove. - - - - Removes the annotations of the specified type from this . - - The of annotations to remove. - - - - Represents a JSON property. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets the property name. - - The property name. - - - - Gets or sets the property value. - - The property value. - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - The property name. - The property content. - - - - Initializes a new instance of the class. - - The property name. - The property content. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Specifies the type of token. - - - - - No token type has been set. - - - - - A JSON object. - - - - - A JSON array. - - - - - A JSON constructor. - - - - - A JSON object property. - - - - - A comment. - - - - - An integer value. - - - - - A float value. - - - - - A string value. - - - - - A boolean value. - - - - - A null value. - - - - - An undefined value. - - - - - A date value. - - - - - A raw JSON value. - - - - - A collection of bytes value. - - - - - A Guid value. - - - - - A Uri value. - - - - - A TimeSpan value. - - - - - Represents a value in JSON (string, integer, date, etc). - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Creates a comment with the given value. - - The value. - A comment with the given value. - - - - Creates a string with the given value. - - The value. - A string with the given value. - - - - Creates a null value. - - A null value. - - - - Creates a undefined value. - - A undefined value. - - - - Gets the node type for this . - - The type. - - - - Gets or sets the underlying token value. - - The underlying token value. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Indicates whether the current object is equal to another object of the same type. - - - true if the current object is equal to the parameter; otherwise, false. - - An object to compare with this object. - - - - Determines whether the specified is equal to the current . - - The to compare with the current . - - true if the specified is equal to the current ; otherwise, false. - - - The parameter is null. - - - - - Serves as a hash function for a particular type. - - - A hash code for the current . - - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format. - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format provider. - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format. - The format provider. - - A that represents this instance. - - - - - Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. - - An object to compare with this instance. - - A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: - Value - Meaning - Less than zero - This instance is less than . - Zero - This instance is equal to . - Greater than zero - This instance is greater than . - - - is not the same type as this instance. - - - - - Specifies metadata property handling options for the . - - - - - Read metadata properties located at the start of a JSON object. - - - - - Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. - - - - - Do not try to read metadata properties. - - - - - Represents a trace writer that writes to the application's instances. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - - The that will be used to filter the trace messages passed to the writer. - - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Provides methods to get attributes. - - - - - Returns a collection of all of the attributes, or an empty collection if there are no attributes. - - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. - - The type of the attributes. - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Represents a trace writer. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - The that will be used to filter the trace messages passed to the writer. - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Contract details for a used by the . - - - - - Gets or sets the default collection items . - - The converter. - - - - Gets or sets a value indicating whether the collection items preserve object references. - - true if collection items preserve object references; otherwise, false. - - - - Gets or sets the collection item reference loop handling. - - The reference loop handling. - - - - Gets or sets the collection item type name handling. - - The type name handling. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Represents a trace writer that writes to memory. When the trace message limit is - reached then old trace messages will be removed as new messages are added. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - - The that will be used to filter the trace messages passed to the writer. - - - - - Initializes a new instance of the class. - - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Returns an enumeration of the most recent trace messages. - - An enumeration of the most recent trace messages. - - - - Returns a of the most recent trace messages. - - - A of the most recent trace messages. - - - - - Provides methods to get attributes from a , , or . - - - - - Initializes a new instance of the class. - - The instance to get attributes for. This parameter should be a , , or . - - - - Returns a collection of all of the attributes, or an empty collection if there are no attributes. - - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. - - The type of the attributes. - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Contract details for a used by the . - - - - - Gets or sets the ISerializable object constructor. - - The ISerializable object constructor. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Get and set values for a using dynamic methods. - - - - - Initializes a new instance of the class. - - The member info. - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - Provides data for the Error event. - - - - - Gets the current object the error event is being raised against. - - The current object the error event is being raised against. - - - - Gets the error context. - - The error context. - - - - Initializes a new instance of the class. - - The current object. - The error context. - - - - Resolves member mappings for a type, camel casing property names. - - - - - Initializes a new instance of the class. - - - - - Resolves the name of the property. - - Name of the property. - The property name camel cased. - - - - Used by to resolves a for a given . - - - - - Gets a value indicating whether members are being get and set using dynamic code generation. - This value is determined by the runtime permissions available. - - - true if using dynamic code generation; otherwise, false. - - - - - Gets or sets the default members search flags. - - The default members search flags. - - - - Gets or sets a value indicating whether compiler generated members should be serialized. - - - true if serialized compiler generated members; otherwise, false. - - - - - Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. - - - true if the interface will be ignored when serializing and deserializing types; otherwise, false. - - - - - Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. - - - true if the attribute will be ignored when serializing and deserializing types; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - - If set to true the will use a cached shared with other resolvers of the same type. - Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only - happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different - results. When set to false it is highly recommended to reuse instances with the . - - - - - Resolves the contract for a given type. - - The type to resolve a contract for. - The contract for a given type. - - - - Gets the serializable members for the type. - - The type to get serializable members for. - The serializable members for the type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates the constructor parameters. - - The constructor to create properties for. - The type's member properties. - Properties for the given . - - - - Creates a for the given . - - The matching member property. - The constructor parameter. - A created for the given . - - - - Resolves the default for the contract. - - Type of the object. - The contract's default . - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Determines which contract type is created for the given type. - - Type of the object. - A for the given type. - - - - Creates properties for the given . - - The type to create properties for. - /// The member serialization mode for the type. - Properties for the given . - - - - Creates the used by the serializer to get and set values from a member. - - The member. - The used by the serializer to get and set values from a member. - - - - Creates a for the given . - - The member's parent . - The member to create a for. - A created for the given . - - - - Resolves the name of the property. - - Name of the property. - Resolved name of the property. - - - - Resolves the key of the dictionary. By default is used to resolve dictionary keys. - - Key of the dictionary. - Resolved key of the dictionary. - - - - Gets the resolved name of the property. - - Name of the property. - Name of the property. - - - - The default serialization binder used when resolving and loading classes from type names. - - - - - When overridden in a derived class, controls the binding of a serialized object to a type. - - Specifies the name of the serialized object. - Specifies the name of the serialized object. - - The type of the object the formatter creates a new instance of. - - - - - Provides information surrounding an error. - - - - - Gets the error. - - The error. - - - - Gets the original object that caused the error. - - The original object that caused the error. - - - - Gets the member that caused the error. - - The member that caused the error. - - - - Gets the path of the JSON location where the error occurred. - - The path of the JSON location where the error occurred. - - - - Gets or sets a value indicating whether this is handled. - - true if handled; otherwise, false. - - - - Used by to resolves a for a given . - - - - - - - - - Resolves the contract for a given type. - - The type to resolve a contract for. - The contract for a given type. - - - - Provides methods to get and set values. - - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - Contract details for a used by the . - - - - - Gets the of the collection items. - - The of the collection items. - - - - Gets a value indicating whether the collection type is a multidimensional array. - - true if the collection type is a multidimensional array; otherwise, false. - - - - Gets or sets the function used to create the object. When set this function will override . - - The function used to create the object. - - - - Gets a value indicating whether the creator has a parameter with the collection values. - - true if the creator has a parameter with the collection values; otherwise, false. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Handles serialization callback events. - - The object that raised the callback event. - The streaming context. - - - - Handles serialization error callback events. - - The object that raised the callback event. - The streaming context. - The error context. - - - - Sets extension data for an object during deserialization. - - The object to set extension data on. - The extension data key. - The extension data value. - - - - Gets extension data for an object during serialization. - - The object to set extension data on. - - - - Contract details for a used by the . - - - - - Gets the underlying type for the contract. - - The underlying type for the contract. - - - - Gets or sets the type created during deserialization. - - The type created during deserialization. - - - - Gets or sets whether this type contract is serialized as a reference. - - Whether this type contract is serialized as a reference. - - - - Gets or sets the default for this contract. - - The converter. - - - - Gets or sets all methods called immediately after deserialization of the object. - - The methods called immediately after deserialization of the object. - - - - Gets or sets all methods called during deserialization of the object. - - The methods called during deserialization of the object. - - - - Gets or sets all methods called after serialization of the object graph. - - The methods called after serialization of the object graph. - - - - Gets or sets all methods called before serialization of the object. - - The methods called before serialization of the object. - - - - Gets or sets all method called when an error is thrown during the serialization of the object. - - The methods called when an error is thrown during the serialization of the object. - - - - Gets or sets the method called immediately after deserialization of the object. - - The method called immediately after deserialization of the object. - - - - Gets or sets the method called during deserialization of the object. - - The method called during deserialization of the object. - - - - Gets or sets the method called after serialization of the object graph. - - The method called after serialization of the object graph. - - - - Gets or sets the method called before serialization of the object. - - The method called before serialization of the object. - - - - Gets or sets the method called when an error is thrown during the serialization of the object. - - The method called when an error is thrown during the serialization of the object. - - - - Gets or sets the default creator method used to create the object. - - The default creator method used to create the object. - - - - Gets or sets a value indicating whether the default creator is non public. - - true if the default object creator is non-public; otherwise, false. - - - - Contract details for a used by the . - - - - - Gets or sets the property name resolver. - - The property name resolver. - - - - Gets or sets the dictionary key resolver. - - The dictionary key resolver. - - - - Gets the of the dictionary keys. - - The of the dictionary keys. - - - - Gets the of the dictionary values. - - The of the dictionary values. - - - - Gets or sets the function used to create the object. When set this function will override . - - The function used to create the object. - - - - Gets a value indicating whether the creator has a parameter with the dictionary values. - - true if the creator has a parameter with the dictionary values; otherwise, false. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Maps a JSON property to a .NET member or constructor parameter. - - - - - Gets or sets the name of the property. - - The name of the property. - - - - Gets or sets the type that declared this property. - - The type that declared this property. - - - - Gets or sets the order of serialization of a member. - - The numeric order of serialization. - - - - Gets or sets the name of the underlying member or parameter. - - The name of the underlying member or parameter. - - - - Gets the that will get and set the during serialization. - - The that will get and set the during serialization. - - - - Gets or sets the for this property. - - The for this property. - - - - Gets or sets the type of the property. - - The type of the property. - - - - Gets or sets the for the property. - If set this converter takes presidence over the contract converter for the property type. - - The converter. - - - - Gets or sets the member converter. - - The member converter. - - - - Gets or sets a value indicating whether this is ignored. - - true if ignored; otherwise, false. - - - - Gets or sets a value indicating whether this is readable. - - true if readable; otherwise, false. - - - - Gets or sets a value indicating whether this is writable. - - true if writable; otherwise, false. - - - - Gets or sets a value indicating whether this has a member attribute. - - true if has a member attribute; otherwise, false. - - - - Gets the default value. - - The default value. - - - - Gets or sets a value indicating whether this is required. - - A value indicating whether this is required. - - - - Gets or sets a value indicating whether this property preserves object references. - - - true if this instance is reference; otherwise, false. - - - - - Gets or sets the property null value handling. - - The null value handling. - - - - Gets or sets the property default value handling. - - The default value handling. - - - - Gets or sets the property reference loop handling. - - The reference loop handling. - - - - Gets or sets the property object creation handling. - - The object creation handling. - - - - Gets or sets or sets the type name handling. - - The type name handling. - - - - Gets or sets a predicate used to determine whether the property should be serialize. - - A predicate used to determine whether the property should be serialize. - - - - Gets or sets a predicate used to determine whether the property should be deserialized. - - A predicate used to determine whether the property should be deserialized. - - - - Gets or sets a predicate used to determine whether the property should be serialized. - - A predicate used to determine whether the property should be serialized. - - - - Gets or sets an action used to set whether the property has been deserialized. - - An action used to set whether the property has been deserialized. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Gets or sets the converter used when serializing the property's collection items. - - The collection's items converter. - - - - Gets or sets whether this property's collection items are serialized as a reference. - - Whether this property's collection items are serialized as a reference. - - - - Gets or sets the the type name handling used when serializing the property's collection items. - - The collection's items type name handling. - - - - Gets or sets the the reference loop handling used when serializing the property's collection items. - - The collection's items reference loop handling. - - - - A collection of objects. - - - - - Initializes a new instance of the class. - - The type. - - - - When implemented in a derived class, extracts the key from the specified element. - - The element from which to extract the key. - The key for the specified element. - - - - Adds a object. - - The property to add to the collection. - - - - Gets the closest matching object. - First attempts to get an exact case match of propertyName and then - a case insensitive match. - - Name of the property. - A matching property if found. - - - - Gets a property by property name. - - The name of the property to get. - Type property name string comparison. - A matching property if found. - - - - Used to resolve references when serializing and deserializing JSON by the . - - - - - Resolves a reference to its object. - - The serialization context. - The reference to resolve. - The object that - - - - Gets the reference for the sepecified object. - - The serialization context. - The object to get a reference for. - The reference to the object. - - - - Determines whether the specified object is referenced. - - The serialization context. - The object to test for a reference. - - true if the specified object is referenced; otherwise, false. - - - - - Adds a reference to the specified object. - - The serialization context. - The reference. - The object to reference. - - - - Contract details for a used by the . - - - - - Gets or sets the object member serialization. - - The member object serialization. - - - - Gets or sets a value that indicates whether the object's properties are required. - - - A value indicating whether the object's properties are required. - - - - - Gets the object's properties. - - The object's properties. - - - - Gets the constructor parameters required for any non-default constructor - - - - - Gets a collection of instances that define the parameters used with . - - - - - Gets or sets the override constructor used to create the object. - This is set when a constructor is marked up using the - JsonConstructor attribute. - - The override constructor. - - - - Gets or sets the parametrized constructor used to create the object. - - The parametrized constructor. - - - - Gets or sets the function used to create the object. When set this function will override . - This function is called with a collection of arguments which are defined by the collection. - - The function used to create the object. - - - - Gets or sets the extension data setter. - - - - - Gets or sets the extension data getter. - - - - - Gets or sets the extension data value type. - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Lookup and create an instance of the JsonConverter type described by the argument. - - The JsonConverter type to create. - Optional arguments to pass to an initializing constructor of the JsonConverter. - If null, the default constructor is used. - - - - Create a factory function that can be used to create instances of a JsonConverter described by the - argument type. The returned function can then be used to either invoke the converter's default ctor, or any - parameterized constructors by way of an object array. - - - - - Get and set values for a using reflection. - - - - - Initializes a new instance of the class. - - The member info. - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - When applied to a method, specifies that the method is called when an error occurs serializing an object. - - - - - Represents a method that constructs an object. - - The object type to create. - - - - Specifies how strings are escaped when writing JSON text. - - - - - Only control characters (e.g. newline) are escaped. - - - - - All non-ASCII and control characters (e.g. newline) are escaped. - - - - - HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. - - - - - Converts the value to the specified type. If the value is unable to be converted, the - value is checked whether it assignable to the specified type. - - The value to convert. - The culture to use when converting. - The type to convert or cast the value to. - - The converted type. If conversion was unsuccessful, the initial value - is returned if assignable to the target type. - - - - - Gets a dictionary of the names and values of an Enum type. - - - - - - Gets a dictionary of the names and values of an Enum type. - - The enum type to get names and values for. - - - - - Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. - - - - - Determines whether the collection is null or empty. - - The collection. - - true if the collection is null or empty; otherwise, false. - - - - - Adds the elements of the specified collection to the specified generic IList. - - The list to add to. - The collection of elements to add. - - - - Gets the type of the typed collection's items. - - The type. - The type of the typed collection's items. - - - - Gets the member's underlying type. - - The member. - The underlying type of the member. - - - - Determines whether the member is an indexed property. - - The member. - - true if the member is an indexed property; otherwise, false. - - - - - Determines whether the property is an indexed property. - - The property. - - true if the property is an indexed property; otherwise, false. - - - - - Gets the member's value on the object. - - The member. - The target object. - The member's value on the object. - - - - Sets the member's value on the target object. - - The member. - The target. - The value. - - - - Determines whether the specified MemberInfo can be read. - - The MemberInfo to determine whether can be read. - /// if set to true then allow the member to be gotten non-publicly. - - true if the specified MemberInfo can be read; otherwise, false. - - - - - Determines whether the specified MemberInfo can be set. - - The MemberInfo to determine whether can be set. - if set to true then allow the member to be set non-publicly. - if set to true then allow the member to be set if read-only. - - true if the specified MemberInfo can be set; otherwise, false. - - - - - Determines whether the string is all white space. Empty string will return false. - - The string to test whether it is all white space. - - true if the string is all white space; otherwise, false. - - - - - Nulls an empty string. - - The string. - Null if the string was null, otherwise the string unchanged. - - - - Indicating whether a property is required. - - - - - The property is not required. The default state. - - - - - The property must be defined in JSON but can be a null value. - - - - - The property must be defined in JSON and cannot be a null value. - - - - - The property is not required but it cannot be a null value. - - - - - Specifies reference handling options for the . - Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. - - - - - - - - Do not preserve references when serializing types. - - - - - Preserve references when serializing into a JSON object structure. - - - - - Preserve references when serializing into a JSON array structure. - - - - - Preserve references when serializing. - - - - - Provides an interface to enable a class to return line and position information. - - - - - Gets a value indicating whether the class can return line information. - - - true if LineNumber and LinePosition can be provided; otherwise, false. - - - - - Gets the current line number. - - The current line number or 0 if no line information is available (for example, HasLineInfo returns false). - - - - Gets the current line position. - - The current line position or 0 if no line information is available (for example, HasLineInfo returns false). - - - - Instructs the how to serialize the collection. - - - - - Gets or sets a value indicating whether null items are allowed in the collection. - - true if null items are allowed in the collection; otherwise, false. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with a flag indicating whether the array can contain null items - - A flag indicating whether the array can contain null items. - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Instructs the how to serialize the object. - - - - - Gets or sets the id. - - The id. - - - - Gets or sets the title. - - The title. - - - - Gets or sets the description. - - The description. - - - - Gets the collection's items converter. - - The collection's items converter. - - - - The parameter list to use when constructing the JsonConverter described by ItemConverterType. - If null, the default constructor is used. - When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, - order, and type of these parameters. - - - [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] - - - - - Gets or sets a value that indicates whether to preserve object references. - - - true to keep object reference; otherwise, false. The default is false. - - - - - Gets or sets a value that indicates whether to preserve collection's items references. - - - true to keep collection's items object references; otherwise, false. The default is false. - - - - - Gets or sets the reference loop handling used when serializing the collection's items. - - The reference loop handling. - - - - Gets or sets the type name handling used when serializing the collection's items. - - The type name handling. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Specifies default value handling options for the . - - - - - - - - - Include members where the member value is the same as the member's default value when serializing objects. - Included members are written to JSON. Has no effect when deserializing. - - - - - Ignore members where the member value is the same as the member's default value when serializing objects - so that is is not written to JSON. - This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, - decimals and floating point numbers; and false for booleans). The default value ignored can be changed by - placing the on the property. - - - - - Members with a default value but no JSON will be set to their default value when deserializing. - - - - - Ignore members where the member value is the same as the member's default value when serializing objects - and sets members to their default value when deserializing. - - - - - Instructs the to use the specified when serializing the member or class. - - - - - Gets the of the converter. - - The of the converter. - - - - The parameter list to use when constructing the JsonConverter described by ConverterType. - If null, the default constructor is used. - - - - - Initializes a new instance of the class. - - Type of the converter. - - - - Initializes a new instance of the class. - - Type of the converter. - Parameter list to use when constructing the JsonConverter. Can be null. - - - - Instructs the how to serialize the object. - - - - - Gets or sets the member serialization. - - The member serialization. - - - - Gets or sets a value that indicates whether the object's properties are required. - - - A value indicating whether the object's properties are required. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified member serialization. - - The member serialization. - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Specifies the settings on a object. - - - - - Gets or sets how reference loops (e.g. a class referencing itself) is handled. - - Reference loop handling. - - - - Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. - - Missing member handling. - - - - Gets or sets how objects are created during deserialization. - - The object creation handling. - - - - Gets or sets how null values are handled during serialization and deserialization. - - Null value handling. - - - - Gets or sets how null default are handled during serialization and deserialization. - - The default value handling. - - - - Gets or sets a collection that will be used during serialization. - - The converters. - - - - Gets or sets how object references are preserved by the serializer. - - The preserve references handling. - - - - Gets or sets how type name writing and reading is handled by the serializer. - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - The type name handling. - - - - Gets or sets how metadata properties are used during deserialization. - - The metadata properties handling. - - - - Gets or sets how a type name assembly is written and resolved by the serializer. - - The type name assembly format. - - - - Gets or sets how constructors are used during deserialization. - - The constructor handling. - - - - Gets or sets the contract resolver used by the serializer when - serializing .NET objects to JSON and vice versa. - - The contract resolver. - - - - Gets or sets the equality comparer used by the serializer when comparing references. - - The equality comparer. - - - - Gets or sets the used by the serializer when resolving references. - - The reference resolver. - - - - Gets or sets a function that creates the used by the serializer when resolving references. - - A function that creates the used by the serializer when resolving references. - - - - Gets or sets the used by the serializer when writing trace messages. - - The trace writer. - - - - Gets or sets the used by the serializer when resolving type names. - - The binder. - - - - Gets or sets the error handler called during serialization and deserialization. - - The error handler called during serialization and deserialization. - - - - Gets or sets the used by the serializer when invoking serialization callback methods. - - The context. - - - - Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling during serialization and deserialization. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written as JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Gets a value indicating whether there will be a check for additional content after deserializing an object. - - - true if there will be a check for additional content after deserializing an object; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Specifies the member serialization options for the . - - - - - All public members are serialized by default. Members can be excluded using or . - This is the default member serialization mode. - - - - - Only members marked with or are serialized. - This member serialization mode can also be set by marking the class with . - - - - - All public and private fields are serialized. Members can be excluded using or . - This member serialization mode can also be set by marking the class with - and setting IgnoreSerializableAttribute on to false. - - - - - Specifies how object creation is handled by the . - - - - - Reuse existing objects, create new objects when needed. - - - - - Only reuse existing objects. - - - - - Always create new objects. - - - - - Represents a reader that provides fast, non-cached, forward-only access to JSON text data. - - - - - Initializes a new instance of the class with the specified . - - The TextReader containing the XML data to read. - - - - Gets or sets the reader's character buffer pool. - - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a []. - - A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Changes the state to closed. - - - - - Gets a value indicating whether the class can return line information. - - - true if LineNumber and LinePosition can be provided; otherwise, false. - - - - - Gets the current line number. - - - The current line number or 0 if no line information is available (for example, HasLineInfo returns false). - - - - - Gets the current line position. - - - The current line position or 0 if no line information is available (for example, HasLineInfo returns false). - - - - - Instructs the to always serialize the member with the specified name. - - - - - Gets or sets the converter used when serializing the property's collection items. - - The collection's items converter. - - - - The parameter list to use when constructing the JsonConverter described by ItemConverterType. - If null, the default constructor is used. - When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, - order, and type of these parameters. - - - [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] - - - - - Gets or sets the null value handling used when serializing this property. - - The null value handling. - - - - Gets or sets the default value handling used when serializing this property. - - The default value handling. - - - - Gets or sets the reference loop handling used when serializing this property. - - The reference loop handling. - - - - Gets or sets the object creation handling used when deserializing this property. - - The object creation handling. - - - - Gets or sets the type name handling used when serializing this property. - - The type name handling. - - - - Gets or sets whether this property's value is serialized as a reference. - - Whether this property's value is serialized as a reference. - - - - Gets or sets the order of serialization of a member. - - The numeric order of serialization. - - - - Gets or sets a value indicating whether this property is required. - - - A value indicating whether this property is required. - - - - - Gets or sets the name of the property. - - The name of the property. - - - - Gets or sets the the reference loop handling used when serializing the property's collection items. - - The collection's items reference loop handling. - - - - Gets or sets the the type name handling used when serializing the property's collection items. - - The collection's items type name handling. - - - - Gets or sets whether this property's collection items are serialized as a reference. - - Whether this property's collection items are serialized as a reference. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified name. - - Name of the property. - - - - Instructs the not to serialize the public field or public read/write property value. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets the writer's character array pool. - - - - - Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. - - - - - Gets or sets which character to use to quote attribute values. - - - - - Gets or sets which character to use for indenting when is set to Formatting.Indented. - - - - - Gets or sets a value indicating whether object names will be surrounded with quotes. - - - - - Creates an instance of the JsonWriter class using the specified . - - The TextWriter to write to. - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the specified end token. - - The end token to write. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - A flag to indicate whether the text should be escaped when it is written as a JSON property name. - - - - Writes indent characters. - - - - - Writes the JSON value delimiter. - - - - - Writes an indent space. - - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes out the given white space. - - The string of white space characters. - - - - The exception thrown when an error occurs while reading JSON text. - - - - - Gets the path to the JSON where the error occurred. - - The path to the JSON where the error occurred. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - The exception thrown when an error occurs while reading JSON text. - - - - - Gets the line number indicating where the error occurred. - - The line number indicating where the error occurred. - - - - Gets the line position indicating where the error occurred. - - The line position indicating where the error occurred. - - - - Gets the path to the JSON where the error occurred. - - The path to the JSON where the error occurred. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - Converts an object to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can read JSON. - - true if this can read JSON; otherwise, false. - - - - Gets a value indicating whether this can write JSON. - - true if this can write JSON; otherwise, false. - - - - Represents a collection of . - - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Specifies the state of the reader. - - - - - The Read method has not been called. - - - - - The end of the file has been reached successfully. - - - - - Reader is at a property. - - - - - Reader is at the start of an object. - - - - - Reader is in an object. - - - - - Reader is at the start of an array. - - - - - Reader is in an array. - - - - - The Close method has been called. - - - - - Reader has just read a value. - - - - - Reader is at the start of a constructor. - - - - - Reader in a constructor. - - - - - An error occurred that prevents the read operation from continuing. - - - - - The end of the file has been reached successfully. - - - - - Gets the current reader state. - - The current reader state. - - - - Gets or sets a value indicating whether the underlying stream or - should be closed when the reader is closed. - - - true to close the underlying stream or when - the reader is closed; otherwise false. The default is true. - - - - - Gets or sets a value indicating whether multiple pieces of JSON content can - be read from a continuous stream without erroring. - - - true to support reading multiple pieces of JSON content; otherwise false. The default is false. - - - - - Gets the quotation mark character used to enclose the value of a string. - - - - - Get or set how time zones are handling when reading JSON. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how custom date formatted strings are parsed when reading JSON. - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Gets the type of the current JSON token. - - - - - Gets the text value of the current JSON token. - - - - - Gets The Common Language Runtime (CLR) type for the current JSON token. - - - - - Gets the depth of the current token in the JSON document. - - The depth of the current token in the JSON document. - - - - Gets the path of the current JSON token. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Initializes a new instance of the class with the specified . - - - - - Reads the next JSON token from the stream. - - true if the next token was read successfully; false if there are no more tokens to read. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a []. - - A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Skips the children of the current token. - - - - - Sets the current token. - - The new token. - - - - Sets the current token and value. - - The new token. - The value. - - - - Sets the state based on current token type. - - - - - Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. - - - - - Releases unmanaged and - optionally - managed resources - - true to release both managed and unmanaged resources; false to release only unmanaged resources. - - - - Changes the to Closed. - - - - - Provides methods for converting between common language runtime types and JSON types. - - - - - - - - Gets or sets a function that creates default . - Default settings are automatically used by serialization methods on , - and and on . - To serialize without using any default settings create a with - . - - - - - Represents JavaScript's boolean value true as a string. This field is read-only. - - - - - Represents JavaScript's boolean value false as a string. This field is read-only. - - - - - Represents JavaScript's null as a string. This field is read-only. - - - - - Represents JavaScript's undefined as a string. This field is read-only. - - - - - Represents JavaScript's positive infinity as a string. This field is read-only. - - - - - Represents JavaScript's negative infinity as a string. This field is read-only. - - - - - Represents JavaScript's NaN as a string. This field is read-only. - - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation using the specified. - - The value to convert. - The format the date will be converted to. - The time zone handling when the date is converted to a string. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation using the specified. - - The value to convert. - The format the date will be converted to. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - The string delimiter character. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - The string delimiter character. - The string escape handling. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Serializes the specified object to a JSON string. - - The object to serialize. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using formatting. - - The object to serialize. - Indicates how the output is formatted. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a collection of . - - The object to serialize. - A collection converters used while serializing. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using formatting and a collection of . - - The object to serialize. - Indicates how the output is formatted. - A collection converters used while serializing. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using . - - The object to serialize. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a type, formatting and . - - The object to serialize. - The used to serialize the object. - If this is null, default serialization settings will be used. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using formatting and . - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a type, formatting and . - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - A JSON string representation of the object. - - - - - Deserializes the JSON to a .NET object. - - The JSON to deserialize. - The deserialized object from the JSON string. - - - - Deserializes the JSON to a .NET object using . - - The JSON to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type. - - The JSON to deserialize. - The of object being deserialized. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type. - - The type of the object to deserialize to. - The JSON to deserialize. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the given anonymous type. - - - The anonymous type to deserialize to. This can't be specified - traditionally and must be infered from the anonymous type passed - as a parameter. - - The JSON to deserialize. - The anonymous type object. - The deserialized anonymous type from the JSON string. - - - - Deserializes the JSON to the given anonymous type using . - - - The anonymous type to deserialize to. This can't be specified - traditionally and must be infered from the anonymous type passed - as a parameter. - - The JSON to deserialize. - The anonymous type object. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized anonymous type from the JSON string. - - - - Deserializes the JSON to the specified .NET type using a collection of . - - The type of the object to deserialize to. - The JSON to deserialize. - Converters to use while deserializing. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using . - - The type of the object to deserialize to. - The object to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using a collection of . - - The JSON to deserialize. - The type of the object to deserialize. - Converters to use while deserializing. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using . - - The JSON to deserialize. - The type of the object to deserialize to. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Populates the object with values from the JSON string. - - The JSON to populate values from. - The target object to populate values onto. - - - - Populates the object with values from the JSON string using . - - The JSON to populate values from. - The target object to populate values onto. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - - - - Serializes the XML node to a JSON string. - - The node to serialize. - A JSON string of the XmlNode. - - - - Serializes the XML node to a JSON string using formatting. - - The node to serialize. - Indicates how the output is formatted. - A JSON string of the XmlNode. - - - - Serializes the XML node to a JSON string using formatting and omits the root object if is true. - - The node to serialize. - Indicates how the output is formatted. - Omits writing the root object. - A JSON string of the XmlNode. - - - - Deserializes the XmlNode from a JSON string. - - The JSON string. - The deserialized XmlNode - - - - Deserializes the XmlNode from a JSON string nested in a root elment specified by . - - The JSON string. - The name of the root element to append when deserializing. - The deserialized XmlNode - - - - Deserializes the XmlNode from a JSON string nested in a root elment specified by - and writes a .NET array attribute for collections. - - The JSON string. - The name of the root element to append when deserializing. - - A flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - The deserialized XmlNode - - - - Serializes the to a JSON string. - - The node to convert to JSON. - A JSON string of the XNode. - - - - Serializes the to a JSON string using formatting. - - The node to convert to JSON. - Indicates how the output is formatted. - A JSON string of the XNode. - - - - Serializes the to a JSON string using formatting and omits the root object if is true. - - The node to serialize. - Indicates how the output is formatted. - Omits writing the root object. - A JSON string of the XNode. - - - - Deserializes the from a JSON string. - - The JSON string. - The deserialized XNode - - - - Deserializes the from a JSON string nested in a root elment specified by . - - The JSON string. - The name of the root element to append when deserializing. - The deserialized XNode - - - - Deserializes the from a JSON string nested in a root elment specified by - and writes a .NET array attribute for collections. - - The JSON string. - The name of the root element to append when deserializing. - - A flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - The deserialized XNode - - - - The exception thrown when an error occurs during JSON serialization or deserialization. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Initializes a new instance of the class. - - The that holds the serialized object data about the exception being thrown. - The that contains contextual information about the source or destination. - The parameter is null. - The class name is null or is zero (0). - - - - Serializes and deserializes objects into and from the JSON format. - The enables you to control how objects are encoded into JSON. - - - - - Occurs when the errors during serialization and deserialization. - - - - - Gets or sets the used by the serializer when resolving references. - - - - - Gets or sets the used by the serializer when resolving type names. - - - - - Gets or sets the used by the serializer when writing trace messages. - - The trace writer. - - - - Gets or sets the equality comparer used by the serializer when comparing references. - - The equality comparer. - - - - Gets or sets how type name writing and reading is handled by the serializer. - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - - - - Gets or sets how a type name assembly is written and resolved by the serializer. - - The type name assembly format. - - - - Gets or sets how object references are preserved by the serializer. - - - - - Get or set how reference loops (e.g. a class referencing itself) is handled. - - - - - Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. - - - - - Get or set how null values are handled during serialization and deserialization. - - - - - Get or set how null default are handled during serialization and deserialization. - - - - - Gets or sets how objects are created during deserialization. - - The object creation handling. - - - - Gets or sets how constructors are used during deserialization. - - The constructor handling. - - - - Gets or sets how metadata properties are used during deserialization. - - The metadata properties handling. - - - - Gets a collection that will be used during serialization. - - Collection that will be used during serialization. - - - - Gets or sets the contract resolver used by the serializer when - serializing .NET objects to JSON and vice versa. - - - - - Gets or sets the used by the serializer when invoking serialization callback methods. - - The context. - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling during serialization and deserialization. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written as JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. - - - true if there will be a check for additional JSON content after deserializing an object; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Creates a new instance. - The will not use default settings - from . - - - A new instance. - The will not use default settings - from . - - - - - Creates a new instance using the specified . - The will not use default settings - from . - - The settings to be applied to the . - - A new instance using the specified . - The will not use default settings - from . - - - - - Creates a new instance. - The will use default settings - from . - - - A new instance. - The will use default settings - from . - - - - - Creates a new instance using the specified . - The will use default settings - from as well as the specified . - - The settings to be applied to the . - - A new instance using the specified . - The will use default settings - from as well as the specified . - - - - - Populates the JSON values onto the target object. - - The that contains the JSON structure to reader values from. - The target object to populate values onto. - - - - Populates the JSON values onto the target object. - - The that contains the JSON structure to reader values from. - The target object to populate values onto. - - - - Deserializes the JSON structure contained by the specified . - - The that contains the JSON structure to deserialize. - The being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The of object being deserialized. - The instance of being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The type of the object to deserialize. - The instance of being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The of object being deserialized. - The instance of being deserialized. - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - - - Specifies missing member handling options for the . - - - - - Ignore a missing member and do not attempt to deserialize it. - - - - - Throw a when a missing member is encountered during deserialization. - - - - - Specifies null value handling options for the . - - - - - - - - - Include null values when serializing and deserializing objects. - - - - - Ignore null values when serializing and deserializing objects. - - - - - Specifies reference loop handling options for the . - - - - - Throw a when a loop is encountered. - - - - - Ignore loop references and do not serialize. - - - - - Serialize loop references. - - - - - Specifies type name handling options for the . - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - - - - Do not include the .NET type name when serializing types. - - - - - Include the .NET type name when serializing into a JSON object structure. - - - - - Include the .NET type name when serializing into a JSON array structure. - - - - - Always include the .NET type name when serializing. - - - - - Include the .NET type name when the type of the object being serialized is not the same as its declared type. - - - - - Specifies the type of JSON token. - - - - - This is returned by the if a method has not been called. - - - - - An object start token. - - - - - An array start token. - - - - - A constructor start token. - - - - - An object property name. - - - - - A comment. - - - - - Raw JSON. - - - - - An integer. - - - - - A float. - - - - - A string. - - - - - A boolean. - - - - - A null token. - - - - - An undefined token. - - - - - An object end token. - - - - - An array end token. - - - - - A constructor end token. - - - - - A Date. - - - - - Byte data. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets a value indicating whether the underlying stream or - should be closed when the writer is closed. - - - true to close the underlying stream or when - the writer is closed; otherwise false. The default is true. - - - - - Gets the top. - - The top. - - - - Gets the state of the writer. - - - - - Gets the path of the writer. - - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling when writing JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written to JSON text. - - - - - Get or set how and values are formatting when writing JSON text. - - - - - Gets or sets the culture used when writing JSON. Defaults to . - - - - - Creates an instance of the JsonWriter class. - - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the end of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the end of an array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the end constructor. - - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - A flag to indicate whether the text should be escaped when it is written as a JSON property name. - - - - Writes the end of the current JSON object or array. - - - - - Writes the current token and its children. - - The to read the token from. - - - - Writes the current token. - - The to read the token from. - A flag indicating whether the current token's children should be written. - - - - Writes the token and its value. - - The to write. - - The value to write. - A value is only required for tokens that have an associated value, e.g. the property name for . - A null value can be passed to the method for token's that don't have a value, e.g. . - - - - Writes the token. - - The to write. - - - - Writes the specified end token. - - The end token to write. - - - - Writes indent characters. - - - - - Writes the JSON value delimiter. - - - - - Writes an indent space. - - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON without changing the writer's state. - - The raw JSON to write. - - - - Writes raw JSON where a value is expected and updates the writer's state. - - The raw JSON to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes out the given white space. - - The string of white space characters. - - - - Releases unmanaged and - optionally - managed resources - - true to release both managed and unmanaged resources; false to release only unmanaged resources. - - - - Sets the state of the JsonWriter, - - The JsonToken being written. - The value being written. - - - - Specifies the state of the . - - - - - An exception has been thrown, which has left the in an invalid state. - You may call the method to put the in the Closed state. - Any other method calls results in an being thrown. - - - - - The method has been called. - - - - - An object is being written. - - - - - A array is being written. - - - - - A constructor is being written. - - - - - A property is being written. - - - - - A write method has not been called. - - - - + + + + Newtonsoft.Json + + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the class. + + The reader. + + + + Initializes a new instance of the class. + + The stream. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The reader. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the to Closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the class. + + The writer. + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this stream and the underlying stream. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Create a custom object + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + + + + + + + + + + + + + + + + + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed. + + true if integers are allowed; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Json Converter for Vector2, Vector3 and Vector4. Only serializes x, y, (z) and (w) properties. + + + + + Default Constructor - All Vector types enabled by default + + + + + Selectively enable Vector types + + Use for Vector2 objects + Use for Vector3 objects + Use for Vector4 objects + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. + + The name of the deserialize root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attibute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the attributeName is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + True if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a paramatized constructor. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent a array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the to always serialize the member, and require the member has a value. + + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. When the or methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Specifies the settings used when loading JSON. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how how null value properties are merged. + + How null value properties are merged. + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Represents a collection of objects. + + The type of token + + + + Gets the with the specified key. + + + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates an that can be used to add tokens to the . + + An that is ready to have content written to it. + + + + Replaces the children nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens + + + + Represents a collection of objects. + + The type of token + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Gets the with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of this object's properties. + + An of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets an of this object's property values. + + An of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries the get value. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the properties for this instance of a component. + + + A that represents the properties for this component instance. + + + + + Returns the properties for this instance of a component using the attribute array as a filter. + + An array of type that is used as a filter. + + A that represents the filtered properties for this component instance. + + + + + Returns a collection of custom attributes for this instance of a component. + + + An containing the attributes for this object. + + + + + Returns the class name of this instance of a component. + + + The class name of the object, or null if the class does not have a name. + + + + + Returns the name of this instance of a component. + + + The name of the object, or null if the object does not have a name. + + + + + Returns a type converter for this instance of a component. + + + A that is the converter for this object, or null if there is no for this object. + + + + + Returns the default event for this instance of a component. + + + An that represents the default event for this object, or null if this object does not have events. + + + + + Returns the default property for this instance of a component. + + + A that represents the default property for this object, or null if this object does not have properties. + + + + + Returns an editor of the specified type for this instance of a component. + + A that represents the editor for this object. + + An of the specified type that is the editor for this object, or null if the editor cannot be found. + + + + + Returns the events for this instance of a component using the specified attribute array as a filter. + + An array of type that is used as a filter. + + An that represents the filtered events for this component instance. + + + + + Returns the events for this instance of a component. + + + An that represents the events for this component instance. + + + + + Returns an object that contains the property described by the specified property descriptor. + + A that represents the property whose owner is to be found. + + An that represents the owner of the specified property. + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + The is read-only. + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + The is read-only. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + The is read-only. + + + + Removes all items from the . + + The is read-only. + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies to. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + The is read-only. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being writen. + + The token being writen. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output is formatted. + A collection of which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Creates an for this token. + + An that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object + + + + Creates the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + An positioned at the token to read into this . + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An that contains the selected elements. + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + The parameter is null. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not the same type as this instance. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Contract details for a used by the . + + + + + Gets or sets the ISerializable object constructor. + + The ISerializable object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the name of the property. + + Name of the property. + The property name camel cased. + + + + Used by to resolves a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + If set to true the will use a cached shared with other resolvers of the same type. + Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only + happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different + results. When set to false it is highly recommended to reuse instances with the . + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Used by to resolves a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the method called immediately after deserialization of the object. + + The method called immediately after deserialization of the object. + + + + Gets or sets the method called during deserialization of the object. + + The method called during deserialization of the object. + + + + Gets or sets the method called after serialization of the object graph. + + The method called after serialization of the object graph. + + + + Gets or sets the method called before serialization of the object. + + The method called before serialization of the object. + + + + Gets or sets the method called when an error is thrown during the serialization of the object. + + The method called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes presidence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialize. + + A predicate used to determine whether the property should be serialize. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of propertyName and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that + + + + Gets the reference for the sepecified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets the object's properties. + + The object's properties. + + + + Gets the constructor parameters required for any non-default constructor + + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the override constructor used to create the object. + This is set when a constructor is marked up using the + JsonConstructor attribute. + + The override constructor. + + + + Gets or sets the parametrized constructor used to create the object. + + The parametrized constructor. + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the JsonConverter type described by the argument. + + The JsonConverter type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Create a factory function that can be used to create instances of a JsonConverter described by the + argument type. The returned function can then be used to either invoke the converter's default ctor, or any + parameterized constructors by way of an object array. + + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Represents a method that constructs an object. + + The object type to create. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Gets a dictionary of the names and values of an Enum type. + + + + + + Gets a dictionary of the names and values of an Enum type. + + The enum type to get names and values for. + + + + + Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic IList. + + The list to add to. + The collection of elements to add. + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Nulls an empty string. + + The string. + Null if the string was null, otherwise the string unchanged. + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if LineNumber and LinePosition can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, HasLineInfo returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, HasLineInfo returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the JsonConverter described by ItemConverterType. + If null, the default constructor is used. + When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, + order, and type of these parameters. + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that is is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and sets members to their default value when deserializing. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the converter. + + The of the converter. + + + + The parameter list to use when constructing the JsonConverter described by ConverterType. + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the converter. + + + + Initializes a new instance of the class. + + Type of the converter. + Parameter list to use when constructing the JsonConverter. Can be null. + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + + Null value handling. + + + + Gets or sets how null default are handled during serialization and deserialization. + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling during serialization and deserialization. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written as JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The TextReader containing the XML data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a []. + + A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Changes the state to closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if LineNumber and LinePosition can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, HasLineInfo returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, HasLineInfo returns false). + + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + The parameter list to use when constructing the JsonConverter described by ItemConverterType. + If null, the default constructor is used. + When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, + order, and type of these parameters. + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to Formatting.Indented. + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Creates an instance of the JsonWriter class using the specified . + + The TextWriter to write to. + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes out the given white space. + + The string of white space characters. + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Represents a collection of . + + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + The Read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The Close method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the underlying stream or + should be closed when the reader is closed. + + + true to close the underlying stream or when + the reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Get or set how time zones are handling when reading JSON. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets The Common Language Runtime (CLR) type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class with the specified . + + + + + Reads the next JSON token from the stream. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a []. + + A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the state based on current token type. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the to Closed. + + + + + Provides methods for converting between common language runtime types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output is formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output is formatted. + A collection converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be infered from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be infered from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the XML node to a JSON string. + + The node to serialize. + A JSON string of the XmlNode. + + + + Serializes the XML node to a JSON string using formatting. + + The node to serialize. + Indicates how the output is formatted. + A JSON string of the XmlNode. + + + + Serializes the XML node to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output is formatted. + Omits writing the root object. + A JSON string of the XmlNode. + + + + Deserializes the XmlNode from a JSON string. + + The JSON string. + The deserialized XmlNode + + + + Deserializes the XmlNode from a JSON string nested in a root elment specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized XmlNode + + + + Deserializes the XmlNode from a JSON string nested in a root elment specified by + and writes a .NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized XmlNode + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the XNode. + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output is formatted. + A JSON string of the XNode. + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output is formatted. + Omits writing the root object. + A JSON string of the XNode. + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized XNode + + + + Deserializes the from a JSON string nested in a root elment specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized XNode + + + + Deserializes the from a JSON string nested in a root elment specified by + and writes a .NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized XNode + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + + + + + Get or set how reference loops (e.g. a class referencing itself) is handled. + + + + + Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + + + + + Get or set how null values are handled during serialization and deserialization. + + + + + Get or set how null default are handled during serialization and deserialization. + + + + + Gets or sets how objects are created during deserialization. + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling during serialization and deserialization. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written as JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + + + + + Specifies the type of JSON token. + + + + + This is returned by the if a method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the underlying stream or + should be closed when the writer is closed. + + + true to close the underlying stream or when + the writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling when writing JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Get or set how and values are formatting when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Creates an instance of the JsonWriter class. + + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + A null value can be passed to the method for token's that don't have a value, e.g. . + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes out the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the JsonWriter, + + The JsonToken being written. + The value being written. + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls results in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + A array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML.meta index 72e2f4f..7623f10 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.XML.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: d6807fedb8dcaf04682d2c84f0ab753f -timeCreated: 1466788355 -licenseType: Store -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: d6807fedb8dcaf04682d2c84f0ab753f +timeCreated: 1466788355 +licenseType: Store +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll.meta old mode 100755 new mode 100644 similarity index 94% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll.meta index c326590..e130150 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll.meta @@ -1,75 +1,75 @@ -fileFormatVersion: 2 -guid: 17aef65a15b471f468b5fbeb4ff0c6a1 -timeCreated: 1466788349 -licenseType: Store -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - platformData: - Android: - enabled: 0 - settings: - CPU: AnyCPU - Any: - enabled: 0 - settings: {} - Editor: - enabled: 1 - settings: - CPU: AnyCPU - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 1 - settings: - CPU: x86 - Linux64: - enabled: 1 - settings: - CPU: x86_64 - LinuxUniversal: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel: - enabled: 1 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 1 - settings: - CPU: AnyCPU - OSXUniversal: - enabled: 1 - settings: - CPU: AnyCPU - SamsungTV: - enabled: 0 - settings: - STV_MODEL: STANDARD_13 - Win: - enabled: 1 - settings: - CPU: AnyCPU - Win64: - enabled: 1 - settings: - CPU: AnyCPU - WindowsStoreApps: - enabled: 0 - settings: - CPU: AnyCPU - DontProcess: False - PlaceholderPath: - SDK: AnySDK - ScriptingBackend: Il2Cpp - iOS: - enabled: 0 - settings: - CompileFlags: - FrameworkDependencies: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 17aef65a15b471f468b5fbeb4ff0c6a1 +timeCreated: 1466788349 +licenseType: Store +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + platformData: + Android: + enabled: 0 + settings: + CPU: AnyCPU + Any: + enabled: 0 + settings: {} + Editor: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + Linux: + enabled: 1 + settings: + CPU: x86 + Linux64: + enabled: 1 + settings: + CPU: x86_64 + LinuxUniversal: + enabled: 1 + settings: + CPU: AnyCPU + OSXIntel: + enabled: 1 + settings: + CPU: AnyCPU + OSXIntel64: + enabled: 1 + settings: + CPU: AnyCPU + OSXUniversal: + enabled: 1 + settings: + CPU: AnyCPU + SamsungTV: + enabled: 0 + settings: + STV_MODEL: STANDARD_13 + Win: + enabled: 1 + settings: + CPU: AnyCPU + Win64: + enabled: 1 + settings: + CPU: AnyCPU + WindowsStoreApps: + enabled: 0 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: + SDK: AnySDK + ScriptingBackend: Il2Cpp + iOS: + enabled: 0 + settings: + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows.meta index bc013d6..0c47db5 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 1418141139a6ac443b18cb05c0643a29 -folderAsset: yes -timeCreated: 1466788345 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 1418141139a6ac443b18cb05c0643a29 +folderAsset: yes +timeCreated: 1466788345 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML old mode 100755 new mode 100644 similarity index 98% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML index 1af577e..ed0eec5 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML @@ -1,7977 +1,7977 @@ - - - - Newtonsoft.Json - - - - - Represents a BSON Oid (object id). - - - - - Gets or sets the value of the Oid. - - The value of the Oid. - - - - Initializes a new instance of the class. - - The Oid value. - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. - - - true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. - - - - - Gets or sets a value indicating whether the root object will be read as a JSON array. - - - true if the root object will be read as a JSON array; otherwise, false. - - - - - Gets or sets the used when reading values from BSON. - - The used when reading values from BSON. - - - - Initializes a new instance of the class. - - The stream. - - - - Initializes a new instance of the class. - - The reader. - - - - Initializes a new instance of the class. - - The stream. - if set to true the root object will be read as a JSON array. - The used when reading values from BSON. - - - - Initializes a new instance of the class. - - The reader. - if set to true the root object will be read as a JSON array. - The used when reading values from BSON. - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Changes the to Closed. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets the used when writing values to BSON. - When set to no conversion will occur. - - The used when writing values to BSON. - - - - Initializes a new instance of the class. - - The stream. - - - - Initializes a new instance of the class. - - The writer. - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Writes the end. - - The token. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes raw JSON where a value is expected and updates the writer's state. - - The raw JSON to write. - - - - Writes the beginning of a JSON array. - - - - - Writes the beginning of a JSON object. - - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Closes this stream and the underlying stream. - - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value that represents a BSON object id. - - The Object ID value to write. - - - - Writes a BSON regex. - - The regex pattern. - The regex options. - - - - Specifies how constructors are used when initializing objects during deserialization by the . - - - - - First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. - - - - - Json.NET will use a non-public default constructor before falling back to a paramatized constructor. - - - - - Converts a to and from JSON and BSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Create a custom object - - The object type to convert. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Creates an object which will then be populated by the serializer. - - Type of the object. - The created object. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can write JSON. - - - true if this can write JSON; otherwise, false. - - - - - Provides a base class for converting a to and from JSON. - - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a F# discriminated union type to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - - - - - - - - - - - - - - Converts an ExpandoObject to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can write JSON. - - - true if this can write JSON; otherwise, false. - - - - - - - - - - - - Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). - - - - - Gets or sets the date time styles used when converting a date to and from JSON. - - The date time styles used when converting a date to and from JSON. - - - - Gets or sets the date time format used when converting a date to and from JSON. - - The date time format used when converting a date to and from JSON. - - - - Gets or sets the culture used when converting a date to and from JSON. - - The culture used when converting a date to and from JSON. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing property value of the JSON that is being converted. - The calling serializer. - The object value. - - - - Converts a to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts a to and from JSON and BSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts an to and from its name string value. - - - - - Gets or sets a value indicating whether the written enum text should be camel case. - - true if the written enum text will be camel case; otherwise, false. - - - - Gets or sets a value indicating whether integer values are allowed. - - true if integers are allowed; otherwise, false. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - true if the written enum text will be camel case; otherwise, false. - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Json Converter for Vector2, Vector3 and Vector4. Only serializes x, y, (z) and (w) properties. - - - - - Default Constructor - All Vector types enabled by default - - - - - Selectively enable Vector types - - Use for Vector2 objects - Use for Vector3 objects - Use for Vector4 objects - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Converts a to and from a string (e.g. "1.2.3.4"). - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing property value of the JSON that is being converted. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Converts XML to and from JSON. - - - - - Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. - - The name of the deserialize root element. - - - - Gets or sets a flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - true if the array attibute is written to the XML; otherwise, false. - - - - Gets or sets a value indicating whether to write the root JSON object. - - true if the JSON root object is omitted; otherwise, false. - - - - Writes the JSON representation of the object. - - The to write to. - The calling serializer. - The value. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Checks if the attributeName is a namespace attribute. - - Attribute name to test. - The attribute name prefix if it has one, otherwise an empty string. - True if attribute name is for a namespace attribute, otherwise false. - - - - Determines whether this instance can convert the specified value type. - - Type of the value. - - true if this instance can convert the specified value type; otherwise, false. - - - - - Specifies how dates are formatted when writing JSON text. - - - - - Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". - - - - - Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". - - - - - Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. - - - - - Date formatted strings are not parsed to a date type and are read as strings. - - - - - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - - - - - Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . - - - - - Specifies how to treat the time value when converting between string and . - - - - - Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. - - - - - Treat as a UTC. If the object represents a local time, it is converted to a UTC. - - - - - Treat as a local time if a is being converted to a string. - If a string is being converted to , convert to a local time if a time zone is specified. - - - - - Time zone information should be preserved when converting. - - - - - Specifies default value handling options for the . - - - - - - - - - Include members where the member value is the same as the member's default value when serializing objects. - Included members are written to JSON. Has no effect when deserializing. - - - - - Ignore members where the member value is the same as the member's default value when serializing objects - so that is is not written to JSON. - This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, - decimals and floating point numbers; and false for booleans). The default value ignored can be changed by - placing the on the property. - - - - - Members with a default value but no JSON will be set to their default value when deserializing. - - - - - Ignore members where the member value is the same as the member's default value when serializing objects - and sets members to their default value when deserializing. - - - - - Specifies float format handling options when writing special floating point numbers, e.g. , - and with . - - - - - Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". - - - - - Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. - Note that this will produce non-valid JSON. - - - - - Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. - - - - - Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Floating point numbers are parsed to . - - - - - Floating point numbers are parsed to . - - - - - Specifies formatting options for the . - - - - - No special formatting is applied. This is the default. - - - - - Causes child objects to be indented according to the and settings. - - - - - Provides an interface for using pooled arrays. - - The array type content. - - - - Rent a array from the pool. This array must be returned when it is no longer needed. - - The minimum required length of the array. The returned array may be longer. - The rented array from the pool. This array must be returned when it is no longer needed. - - - - Return an array to the pool. - - The array that is being returned. - - - - Provides an interface to enable a class to return line and position information. - - - - - Gets a value indicating whether the class can return line information. - - - true if LineNumber and LinePosition can be provided; otherwise, false. - - - - - Gets the current line number. - - The current line number or 0 if no line information is available (for example, HasLineInfo returns false). - - - - Gets the current line position. - - The current line position or 0 if no line information is available (for example, HasLineInfo returns false). - - - - Instructs the how to serialize the collection. - - - - - Gets or sets a value indicating whether null items are allowed in the collection. - - true if null items are allowed in the collection; otherwise, false. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with a flag indicating whether the array can contain null items - - A flag indicating whether the array can contain null items. - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Instructs the to use the specified constructor when deserializing that object. - - - - - Instructs the how to serialize the object. - - - - - Gets or sets the id. - - The id. - - - - Gets or sets the title. - - The title. - - - - Gets or sets the description. - - The description. - - - - Gets the collection's items converter. - - The collection's items converter. - - - - The parameter list to use when constructing the JsonConverter described by ItemConverterType. - If null, the default constructor is used. - When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, - order, and type of these parameters. - - - [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] - - - - - Gets or sets a value that indicates whether to preserve object references. - - - true to keep object reference; otherwise, false. The default is false. - - - - - Gets or sets a value that indicates whether to preserve collection's items references. - - - true to keep collection's items object references; otherwise, false. The default is false. - - - - - Gets or sets the reference loop handling used when serializing the collection's items. - - The reference loop handling. - - - - Gets or sets the type name handling used when serializing the collection's items. - - The type name handling. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Provides methods for converting between common language runtime types and JSON types. - - - - - - - - Gets or sets a function that creates default . - Default settings are automatically used by serialization methods on , - and and on . - To serialize without using any default settings create a with - . - - - - - Represents JavaScript's boolean value true as a string. This field is read-only. - - - - - Represents JavaScript's boolean value false as a string. This field is read-only. - - - - - Represents JavaScript's null as a string. This field is read-only. - - - - - Represents JavaScript's undefined as a string. This field is read-only. - - - - - Represents JavaScript's positive infinity as a string. This field is read-only. - - - - - Represents JavaScript's negative infinity as a string. This field is read-only. - - - - - Represents JavaScript's NaN as a string. This field is read-only. - - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation using the specified. - - The value to convert. - The format the date will be converted to. - The time zone handling when the date is converted to a string. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation using the specified. - - The value to convert. - The format the date will be converted to. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - The string delimiter character. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - The string delimiter character. - The string escape handling. - A JSON string representation of the . - - - - Converts the to its JSON string representation. - - The value to convert. - A JSON string representation of the . - - - - Serializes the specified object to a JSON string. - - The object to serialize. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using formatting. - - The object to serialize. - Indicates how the output is formatted. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a collection of . - - The object to serialize. - A collection converters used while serializing. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using formatting and a collection of . - - The object to serialize. - Indicates how the output is formatted. - A collection converters used while serializing. - A JSON string representation of the object. - - - - Serializes the specified object to a JSON string using . - - The object to serialize. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a type, formatting and . - - The object to serialize. - The used to serialize the object. - If this is null, default serialization settings will be used. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using formatting and . - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A JSON string representation of the object. - - - - - Serializes the specified object to a JSON string using a type, formatting and . - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - A JSON string representation of the object. - - - - - Asynchronously serializes the specified object to a JSON string. - Serialization will happen on a new thread. - - The object to serialize. - - A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. - - - - - Asynchronously serializes the specified object to a JSON string using formatting. - Serialization will happen on a new thread. - - The object to serialize. - Indicates how the output is formatted. - - A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. - - - - - Asynchronously serializes the specified object to a JSON string using formatting and a collection of . - Serialization will happen on a new thread. - - The object to serialize. - Indicates how the output is formatted. - The used to serialize the object. - If this is null, default serialization settings will be used. - - A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. - - - - - Deserializes the JSON to a .NET object. - - The JSON to deserialize. - The deserialized object from the JSON string. - - - - Deserializes the JSON to a .NET object using . - - The JSON to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type. - - The JSON to deserialize. - The of object being deserialized. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type. - - The type of the object to deserialize to. - The JSON to deserialize. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the given anonymous type. - - - The anonymous type to deserialize to. This can't be specified - traditionally and must be infered from the anonymous type passed - as a parameter. - - The JSON to deserialize. - The anonymous type object. - The deserialized anonymous type from the JSON string. - - - - Deserializes the JSON to the given anonymous type using . - - - The anonymous type to deserialize to. This can't be specified - traditionally and must be infered from the anonymous type passed - as a parameter. - - The JSON to deserialize. - The anonymous type object. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized anonymous type from the JSON string. - - - - Deserializes the JSON to the specified .NET type using a collection of . - - The type of the object to deserialize to. - The JSON to deserialize. - Converters to use while deserializing. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using . - - The type of the object to deserialize to. - The object to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using a collection of . - - The JSON to deserialize. - The type of the object to deserialize. - Converters to use while deserializing. - The deserialized object from the JSON string. - - - - Deserializes the JSON to the specified .NET type using . - - The JSON to deserialize. - The type of the object to deserialize to. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - The deserialized object from the JSON string. - - - - Asynchronously deserializes the JSON to the specified .NET type. - Deserialization will happen on a new thread. - - The type of the object to deserialize to. - The JSON to deserialize. - - A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. - - - - - Asynchronously deserializes the JSON to the specified .NET type using . - Deserialization will happen on a new thread. - - The type of the object to deserialize to. - The JSON to deserialize. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - - A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. - - - - - Asynchronously deserializes the JSON to the specified .NET type. - Deserialization will happen on a new thread. - - The JSON to deserialize. - - A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. - - - - - Asynchronously deserializes the JSON to the specified .NET type using . - Deserialization will happen on a new thread. - - The JSON to deserialize. - The type of the object to deserialize to. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - - A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. - - - - - Populates the object with values from the JSON string. - - The JSON to populate values from. - The target object to populate values onto. - - - - Populates the object with values from the JSON string using . - - The JSON to populate values from. - The target object to populate values onto. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - - - - Asynchronously populates the object with values from the JSON string using . - - The JSON to populate values from. - The target object to populate values onto. - - The used to deserialize the object. - If this is null, default serialization settings will be used. - - - A task that represents the asynchronous populate operation. - - - - - Serializes the to a JSON string. - - The node to convert to JSON. - A JSON string of the XNode. - - - - Serializes the to a JSON string using formatting. - - The node to convert to JSON. - Indicates how the output is formatted. - A JSON string of the XNode. - - - - Serializes the to a JSON string using formatting and omits the root object if is true. - - The node to serialize. - Indicates how the output is formatted. - Omits writing the root object. - A JSON string of the XNode. - - - - Deserializes the from a JSON string. - - The JSON string. - The deserialized XNode - - - - Deserializes the from a JSON string nested in a root elment specified by . - - The JSON string. - The name of the root element to append when deserializing. - The deserialized XNode - - - - Deserializes the from a JSON string nested in a root elment specified by - and writes a .NET array attribute for collections. - - The JSON string. - The name of the root element to append when deserializing. - - A flag to indicate whether to write the Json.NET array attribute. - This attribute helps preserve arrays when converting the written XML back to JSON. - - The deserialized XNode - - - - Converts an object to and from JSON. - - - - - Writes the JSON representation of the object. - - The to write to. - The value. - The calling serializer. - - - - Reads the JSON representation of the object. - - The to read from. - Type of the object. - The existing value of object being read. - The calling serializer. - The object value. - - - - Determines whether this instance can convert the specified object type. - - Type of the object. - - true if this instance can convert the specified object type; otherwise, false. - - - - - Gets a value indicating whether this can read JSON. - - true if this can read JSON; otherwise, false. - - - - Gets a value indicating whether this can write JSON. - - true if this can write JSON; otherwise, false. - - - - Instructs the to use the specified when serializing the member or class. - - - - - Gets the of the converter. - - The of the converter. - - - - The parameter list to use when constructing the JsonConverter described by ConverterType. - If null, the default constructor is used. - - - - - Initializes a new instance of the class. - - Type of the converter. - - - - Initializes a new instance of the class. - - Type of the converter. - Parameter list to use when constructing the JsonConverter. Can be null. - - - - Represents a collection of . - - - - - Instructs the how to serialize the collection. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - The exception thrown when an error occurs during JSON serialization or deserialization. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Instructs the to deserialize properties with no matching class member into the specified collection - and write values during serialization. - - - - - Gets or sets a value that indicates whether to write extension data when serializing the object. - - - true to write extension data when serializing the object; otherwise, false. The default is true. - - - - - Gets or sets a value that indicates whether to read extension data when deserializing the object. - - - true to read extension data when deserializing the object; otherwise, false. The default is true. - - - - - Initializes a new instance of the class. - - - - - Instructs the not to serialize the public field or public read/write property value. - - - - - Instructs the how to serialize the object. - - - - - Gets or sets the member serialization. - - The member serialization. - - - - Gets or sets a value that indicates whether the object's properties are required. - - - A value indicating whether the object's properties are required. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified member serialization. - - The member serialization. - - - - Initializes a new instance of the class with the specified container Id. - - The container Id. - - - - Instructs the to always serialize the member with the specified name. - - - - - Gets or sets the converter used when serializing the property's collection items. - - The collection's items converter. - - - - The parameter list to use when constructing the JsonConverter described by ItemConverterType. - If null, the default constructor is used. - When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, - order, and type of these parameters. - - - [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] - - - - - Gets or sets the null value handling used when serializing this property. - - The null value handling. - - - - Gets or sets the default value handling used when serializing this property. - - The default value handling. - - - - Gets or sets the reference loop handling used when serializing this property. - - The reference loop handling. - - - - Gets or sets the object creation handling used when deserializing this property. - - The object creation handling. - - - - Gets or sets the type name handling used when serializing this property. - - The type name handling. - - - - Gets or sets whether this property's value is serialized as a reference. - - Whether this property's value is serialized as a reference. - - - - Gets or sets the order of serialization of a member. - - The numeric order of serialization. - - - - Gets or sets a value indicating whether this property is required. - - - A value indicating whether this property is required. - - - - - Gets or sets the name of the property. - - The name of the property. - - - - Gets or sets the the reference loop handling used when serializing the property's collection items. - - The collection's items reference loop handling. - - - - Gets or sets the the type name handling used when serializing the property's collection items. - - The collection's items type name handling. - - - - Gets or sets whether this property's collection items are serialized as a reference. - - Whether this property's collection items are serialized as a reference. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class with the specified name. - - Name of the property. - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Specifies the state of the reader. - - - - - The Read method has not been called. - - - - - The end of the file has been reached successfully. - - - - - Reader is at a property. - - - - - Reader is at the start of an object. - - - - - Reader is in an object. - - - - - Reader is at the start of an array. - - - - - Reader is in an array. - - - - - The Close method has been called. - - - - - Reader has just read a value. - - - - - Reader is at the start of a constructor. - - - - - Reader in a constructor. - - - - - An error occurred that prevents the read operation from continuing. - - - - - The end of the file has been reached successfully. - - - - - Gets the current reader state. - - The current reader state. - - - - Gets or sets a value indicating whether the underlying stream or - should be closed when the reader is closed. - - - true to close the underlying stream or when - the reader is closed; otherwise false. The default is true. - - - - - Gets or sets a value indicating whether multiple pieces of JSON content can - be read from a continuous stream without erroring. - - - true to support reading multiple pieces of JSON content; otherwise false. The default is false. - - - - - Gets the quotation mark character used to enclose the value of a string. - - - - - Get or set how time zones are handling when reading JSON. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how custom date formatted strings are parsed when reading JSON. - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Gets the type of the current JSON token. - - - - - Gets the text value of the current JSON token. - - - - - Gets The Common Language Runtime (CLR) type for the current JSON token. - - - - - Gets the depth of the current token in the JSON document. - - The depth of the current token in the JSON document. - - - - Gets the path of the current JSON token. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Initializes a new instance of the class with the specified . - - - - - Reads the next JSON token from the stream. - - true if the next token was read successfully; false if there are no more tokens to read. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a []. - - A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Skips the children of the current token. - - - - - Sets the current token. - - The new token. - - - - Sets the current token and value. - - The new token. - The value. - - - - Sets the state based on current token type. - - - - - Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. - - - - - Releases unmanaged and - optionally - managed resources - - true to release both managed and unmanaged resources; false to release only unmanaged resources. - - - - Changes the to Closed. - - - - - The exception thrown when an error occurs while reading JSON text. - - - - - Gets the line number indicating where the error occurred. - - The line number indicating where the error occurred. - - - - Gets the line position indicating where the error occurred. - - The line position indicating where the error occurred. - - - - Gets the path to the JSON where the error occurred. - - The path to the JSON where the error occurred. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Instructs the to always serialize the member, and require the member has a value. - - - - - The exception thrown when an error occurs during JSON serialization or deserialization. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Serializes and deserializes objects into and from the JSON format. - The enables you to control how objects are encoded into JSON. - - - - - Occurs when the errors during serialization and deserialization. - - - - - Gets or sets the used by the serializer when resolving references. - - - - - Gets or sets the used by the serializer when resolving type names. - - - - - Gets or sets the used by the serializer when writing trace messages. - - The trace writer. - - - - Gets or sets the equality comparer used by the serializer when comparing references. - - The equality comparer. - - - - Gets or sets how type name writing and reading is handled by the serializer. - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - - - - Gets or sets how a type name assembly is written and resolved by the serializer. - - The type name assembly format. - - - - Gets or sets how object references are preserved by the serializer. - - - - - Get or set how reference loops (e.g. a class referencing itself) is handled. - - - - - Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. - - - - - Get or set how null values are handled during serialization and deserialization. - - - - - Get or set how null default are handled during serialization and deserialization. - - - - - Gets or sets how objects are created during deserialization. - - The object creation handling. - - - - Gets or sets how constructors are used during deserialization. - - The constructor handling. - - - - Gets or sets how metadata properties are used during deserialization. - - The metadata properties handling. - - - - Gets a collection that will be used during serialization. - - Collection that will be used during serialization. - - - - Gets or sets the contract resolver used by the serializer when - serializing .NET objects to JSON and vice versa. - - - - - Gets or sets the used by the serializer when invoking serialization callback methods. - - The context. - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling during serialization and deserialization. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written as JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. - - - true if there will be a check for additional JSON content after deserializing an object; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Creates a new instance. - The will not use default settings - from . - - - A new instance. - The will not use default settings - from . - - - - - Creates a new instance using the specified . - The will not use default settings - from . - - The settings to be applied to the . - - A new instance using the specified . - The will not use default settings - from . - - - - - Creates a new instance. - The will use default settings - from . - - - A new instance. - The will use default settings - from . - - - - - Creates a new instance using the specified . - The will use default settings - from as well as the specified . - - The settings to be applied to the . - - A new instance using the specified . - The will use default settings - from as well as the specified . - - - - - Populates the JSON values onto the target object. - - The that contains the JSON structure to reader values from. - The target object to populate values onto. - - - - Populates the JSON values onto the target object. - - The that contains the JSON structure to reader values from. - The target object to populate values onto. - - - - Deserializes the JSON structure contained by the specified . - - The that contains the JSON structure to deserialize. - The being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The of object being deserialized. - The instance of being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The type of the object to deserialize. - The instance of being deserialized. - - - - Deserializes the JSON structure contained by the specified - into an instance of the specified type. - - The containing the object. - The of object being deserialized. - The instance of being deserialized. - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - The type of the value being serialized. - This parameter is used when is Auto to write out the type name if the type of the value does not match. - Specifing the type is optional. - - - - - Serializes the specified and writes the JSON structure - to a Stream using the specified . - - The used to write the JSON structure. - The to serialize. - - - - Specifies the settings on a object. - - - - - Gets or sets how reference loops (e.g. a class referencing itself) is handled. - - Reference loop handling. - - - - Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. - - Missing member handling. - - - - Gets or sets how objects are created during deserialization. - - The object creation handling. - - - - Gets or sets how null values are handled during serialization and deserialization. - - Null value handling. - - - - Gets or sets how null default are handled during serialization and deserialization. - - The default value handling. - - - - Gets or sets a collection that will be used during serialization. - - The converters. - - - - Gets or sets how object references are preserved by the serializer. - - The preserve references handling. - - - - Gets or sets how type name writing and reading is handled by the serializer. - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - The type name handling. - - - - Gets or sets how metadata properties are used during deserialization. - - The metadata properties handling. - - - - Gets or sets how a type name assembly is written and resolved by the serializer. - - The type name assembly format. - - - - Gets or sets how constructors are used during deserialization. - - The constructor handling. - - - - Gets or sets the contract resolver used by the serializer when - serializing .NET objects to JSON and vice versa. - - The contract resolver. - - - - Gets or sets the equality comparer used by the serializer when comparing references. - - The equality comparer. - - - - Gets or sets the used by the serializer when resolving references. - - The reference resolver. - - - - Gets or sets a function that creates the used by the serializer when resolving references. - - A function that creates the used by the serializer when resolving references. - - - - Gets or sets the used by the serializer when writing trace messages. - - The trace writer. - - - - Gets or sets the used by the serializer when resolving type names. - - The binder. - - - - Gets or sets the error handler called during serialization and deserialization. - - The error handler called during serialization and deserialization. - - - - Gets or sets the used by the serializer when invoking serialization callback methods. - - The context. - - - - Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. - - - - - Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . - - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling during serialization and deserialization. - - - - - Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written as JSON. - - - - - Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Gets or sets the culture used when reading JSON. Defaults to . - - - - - Gets a value indicating whether there will be a check for additional content after deserializing an object. - - - true if there will be a check for additional content after deserializing an object; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Represents a reader that provides fast, non-cached, forward-only access to JSON text data. - - - - - Initializes a new instance of the class with the specified . - - The TextReader containing the XML data to read. - - - - Gets or sets the reader's character buffer pool. - - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a []. - - A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Reads the next JSON token from the stream as a . - - A . This method will return null at the end of an array. - - - - Changes the state to closed. - - - - - Gets a value indicating whether the class can return line information. - - - true if LineNumber and LinePosition can be provided; otherwise, false. - - - - - Gets the current line number. - - - The current line number or 0 if no line information is available (for example, HasLineInfo returns false). - - - - - Gets the current line position. - - - The current line position or 0 if no line information is available (for example, HasLineInfo returns false). - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets the writer's character array pool. - - - - - Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. - - - - - Gets or sets which character to use to quote attribute values. - - - - - Gets or sets which character to use for indenting when is set to Formatting.Indented. - - - - - Gets or sets a value indicating whether object names will be surrounded with quotes. - - - - - Creates an instance of the JsonWriter class using the specified . - - The TextWriter to write to. - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the specified end token. - - The end token to write. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - A flag to indicate whether the text should be escaped when it is written as a JSON property name. - - - - Writes indent characters. - - - - - Writes the JSON value delimiter. - - - - - Writes an indent space. - - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes out the given white space. - - The string of white space characters. - - - - Specifies the type of JSON token. - - - - - This is returned by the if a method has not been called. - - - - - An object start token. - - - - - An array start token. - - - - - A constructor start token. - - - - - An object property name. - - - - - A comment. - - - - - Raw JSON. - - - - - An integer. - - - - - A float. - - - - - A string. - - - - - A boolean. - - - - - A null token. - - - - - An undefined token. - - - - - An object end token. - - - - - An array end token. - - - - - A constructor end token. - - - - - A Date. - - - - - Byte data. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets or sets a value indicating whether the underlying stream or - should be closed when the writer is closed. - - - true to close the underlying stream or when - the writer is closed; otherwise false. The default is true. - - - - - Gets the top. - - The top. - - - - Gets the state of the writer. - - - - - Gets the path of the writer. - - - - - Indicates how JSON text output is formatted. - - - - - Get or set how dates are written to JSON text. - - - - - Get or set how time zones are handling when writing JSON text. - - - - - Get or set how strings are escaped when writing JSON text. - - - - - Get or set how special floating point numbers, e.g. , - and , - are written to JSON text. - - - - - Get or set how and values are formatting when writing JSON text. - - - - - Gets or sets the culture used when writing JSON. Defaults to . - - - - - Creates an instance of the JsonWriter class. - - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the end of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the end of an array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the end constructor. - - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - A flag to indicate whether the text should be escaped when it is written as a JSON property name. - - - - Writes the end of the current JSON object or array. - - - - - Writes the current token and its children. - - The to read the token from. - - - - Writes the current token. - - The to read the token from. - A flag indicating whether the current token's children should be written. - - - - Writes the token and its value. - - The to write. - - The value to write. - A value is only required for tokens that have an associated value, e.g. the property name for . - A null value can be passed to the method for token's that don't have a value, e.g. . - - - - Writes the token. - - The to write. - - - - Writes the specified end token. - - The end token to write. - - - - Writes indent characters. - - - - - Writes the JSON value delimiter. - - - - - Writes an indent space. - - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON without changing the writer's state. - - The raw JSON to write. - - - - Writes raw JSON where a value is expected and updates the writer's state. - - The raw JSON to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes out the given white space. - - The string of white space characters. - - - - Releases unmanaged and - optionally - managed resources - - true to release both managed and unmanaged resources; false to release only unmanaged resources. - - - - Sets the state of the JsonWriter, - - The JsonToken being written. - The value being written. - - - - The exception thrown when an error occurs while reading JSON text. - - - - - Gets the path to the JSON where the error occurred. - - The path to the JSON where the error occurred. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class - with a specified error message. - - The error message that explains the reason for the exception. - - - - Initializes a new instance of the class - with a specified error message and a reference to the inner exception that is the cause of this exception. - - The error message that explains the reason for the exception. - The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. - - - - Specifies how JSON comments are handled when loading JSON. - - - - - Ignore comments. - - - - - Load comments as a with type . - - - - - Specifies how line information is handled when loading JSON. - - - - - Ignore line information. - - - - - Load line information. - - - - - Contains the LINQ to JSON extension methods. - - - - - Returns a collection of tokens that contains the ancestors of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains the ancestors of every token in the source collection. - - - - Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains every token in the source collection, the ancestors of every token in the source collection. - - - - Returns a collection of tokens that contains the descendants of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains the descendants of every token in the source collection. - - - - Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. - - The type of the objects in source, constrained to . - An of that contains the source collection. - An of that contains every token in the source collection, and the descendants of every token in the source collection. - - - - Returns a collection of child properties of every object in the source collection. - - An of that contains the source collection. - An of that contains the properties of every object in the source collection. - - - - Returns a collection of child values of every object in the source collection with the given key. - - An of that contains the source collection. - The token key. - An of that contains the values of every token in the source collection with the given key. - - - - Returns a collection of child values of every object in the source collection. - - An of that contains the source collection. - An of that contains the values of every token in the source collection. - - - - Returns a collection of converted child values of every object in the source collection with the given key. - - The type to convert the values to. - An of that contains the source collection. - The token key. - An that contains the converted values of every token in the source collection with the given key. - - - - Returns a collection of converted child values of every object in the source collection. - - The type to convert the values to. - An of that contains the source collection. - An that contains the converted values of every token in the source collection. - - - - Converts the value. - - The type to convert the value to. - A cast as a of . - A converted value. - - - - Converts the value. - - The source collection type. - The type to convert the value to. - A cast as a of . - A converted value. - - - - Returns a collection of child tokens of every array in the source collection. - - The source collection type. - An of that contains the source collection. - An of that contains the values of every token in the source collection. - - - - Returns a collection of converted child tokens of every array in the source collection. - - An of that contains the source collection. - The type to convert the values to. - The source collection type. - An that contains the converted values of every token in the source collection. - - - - Returns the input typed as . - - An of that contains the source collection. - The input typed as . - - - - Returns the input typed as . - - The source collection type. - An of that contains the source collection. - The input typed as . - - - - Represents a collection of objects. - - The type of token - - - - Gets the with the specified key. - - - - - - Represents a JSON array. - - - - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified content. - - The contents of the array. - - - - Initializes a new instance of the class with the specified content. - - The contents of the array. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - - - - Creates a from an object. - - The object that will be used to create . - A with the values of the specified object - - - - Creates a from an object. - - The object that will be used to create . - The that will be used to read the object. - A with the values of the specified object - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets or sets the at the specified index. - - - - - - Determines the index of a specific item in the . - - The object to locate in the . - - The index of if found in the list; otherwise, -1. - - - - - Inserts an item to the at the specified index. - - The zero-based index at which should be inserted. - The object to insert into the . - - is not a valid index in the . - The is read-only. - - - - Removes the item at the specified index. - - The zero-based index of the item to remove. - - is not a valid index in the . - The is read-only. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Adds an item to the . - - The object to add to the . - The is read-only. - - - - Removes all items from the . - - The is read-only. - - - - Determines whether the contains a specific value. - - The object to locate in the . - - true if is found in the ; otherwise, false. - - - - - Copies to. - - The array. - Index of the array. - - - - Gets a value indicating whether the is read-only. - - true if the is read-only; otherwise, false. - - - - Removes the first occurrence of a specific object from the . - - The object to remove from the . - - true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . - - The is read-only. - - - - Represents a JSON constructor. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets or sets the name of this constructor. - - The constructor name. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified name and content. - - The constructor name. - The contents of the constructor. - - - - Initializes a new instance of the class with the specified name and content. - - The constructor name. - The contents of the constructor. - - - - Initializes a new instance of the class with the specified name. - - The constructor name. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified key. - - The with the specified key. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Represents a token that can contain other tokens. - - - - - Occurs when the items list of the collection has changed, or the collection is reset. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Raises the event. - - The instance containing the event data. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Get the first child token of this token. - - - A containing the first child token of the . - - - - - Get the last child token of this token. - - - A containing the last child token of the . - - - - - Returns a collection of the child tokens of this token, in document order. - - - An of containing the child tokens of this , in document order. - - - - - Returns a collection of the child values of this token, in document order. - - The type to convert the values to. - - A containing the child values of this , in document order. - - - - - Returns a collection of the descendant tokens for this token in document order. - - An containing the descendant tokens of the . - - - - Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. - - An containing this token, and all the descendant tokens of the . - - - - Adds the specified content as children of this . - - The content to be added. - - - - Adds the specified content as the first children of this . - - The content to be added. - - - - Creates an that can be used to add tokens to the . - - An that is ready to have content written to it. - - - - Replaces the children nodes of this token with the specified content. - - The content. - - - - Removes the child nodes from this token. - - - - - Merge the specified content into this . - - The content to be merged. - - - - Merge the specified content into this using . - - The content to be merged. - The used to merge the content. - - - - Gets the count of child JSON tokens. - - The count of child JSON tokens - - - - Represents a collection of objects. - - The type of token - - - - An empty collection of objects. - - - - - Initializes a new instance of the struct. - - The enumerable. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Returns an enumerator that iterates through a collection. - - - An object that can be used to iterate through the collection. - - - - - Gets the with the specified key. - - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Determines whether the specified is equal to this instance. - - The to compare with this instance. - - true if the specified is equal to this instance; otherwise, false. - - - - - Returns a hash code for this instance. - - - A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. - - - - - Represents a JSON object. - - - - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Occurs when a property value changes. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the specified content. - - The contents of the object. - - - - Initializes a new instance of the class with the specified content. - - The contents of the object. - - - - Gets the node type for this . - - The type. - - - - Gets an of this object's properties. - - An of this object's properties. - - - - Gets a the specified name. - - The property name. - A with the specified name or null. - - - - Gets an of this object's property values. - - An of this object's property values. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets or sets the with the specified property name. - - - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - - - - Creates a from an object. - - The object that will be used to create . - A with the values of the specified object - - - - Creates a from an object. - - The object that will be used to create . - The that will be used to read the object. - A with the values of the specified object - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Gets the with the specified property name. - - Name of the property. - The with the specified property name. - - - - Gets the with the specified property name. - The exact property name will be searched for first and if no matching property is found then - the will be used to match a property. - - Name of the property. - One of the enumeration values that specifies how the strings will be compared. - The with the specified property name. - - - - Tries to get the with the specified property name. - The exact property name will be searched for first and if no matching property is found then - the will be used to match a property. - - Name of the property. - The value. - One of the enumeration values that specifies how the strings will be compared. - true if a value was successfully retrieved; otherwise, false. - - - - Adds the specified property name. - - Name of the property. - The value. - - - - Removes the property with the specified name. - - Name of the property. - true if item was successfully removed; otherwise, false. - - - - Tries the get value. - - Name of the property. - The value. - true if a value was successfully retrieved; otherwise, false. - - - - Returns an enumerator that iterates through the collection. - - - A that can be used to iterate through the collection. - - - - - Raises the event with the provided arguments. - - Name of the property. - - - - Returns the responsible for binding operations performed on this object. - - The expression tree representation of the runtime value. - - The to bind this object. - - - - - Represents a JSON property. - - - - - Gets the container's children tokens. - - The container's children tokens. - - - - Gets the property name. - - The property name. - - - - Gets or sets the property value. - - The property value. - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Gets the node type for this . - - The type. - - - - Initializes a new instance of the class. - - The property name. - The property content. - - - - Initializes a new instance of the class. - - The property name. - The property content. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Loads an from a . - - A that will be read for the content of the . - A that contains the JSON that was read from the specified . - - - - Loads an from a . - - A that will be read for the content of the . - The used to load the JSON. - If this is null, default load settings will be used. - A that contains the JSON that was read from the specified . - - - - Represents a raw JSON string. - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class. - - The raw json. - - - - Creates an instance of with the content of the reader's current token. - - The reader. - An instance of with the content of the reader's current token. - - - - Specifies the settings used when loading JSON. - - - - - Gets or sets how JSON comments are handled when loading JSON. - - The JSON comment handling. - - - - Gets or sets how JSON line info is handled when loading JSON. - - The JSON line info handling. - - - - Specifies the settings used when merging JSON. - - - - - Gets or sets the method used when merging JSON arrays. - - The method used when merging JSON arrays. - - - - Gets or sets how how null value properties are merged. - - How null value properties are merged. - - - - Represents an abstract JSON token. - - - - - Gets a comparer that can compare two tokens for value equality. - - A that can compare two nodes for value equality. - - - - Gets or sets the parent. - - The parent. - - - - Gets the root of this . - - The root of this . - - - - Gets the node type for this . - - The type. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Compares the values of two tokens, including the values of all descendant tokens. - - The first to compare. - The second to compare. - true if the tokens are equal; otherwise false. - - - - Gets the next sibling token of this node. - - The that contains the next sibling token. - - - - Gets the previous sibling token of this node. - - The that contains the previous sibling token. - - - - Gets the path of the JSON token. - - - - - Adds the specified content immediately after this token. - - A content object that contains simple content or a collection of content objects to be added after this token. - - - - Adds the specified content immediately before this token. - - A content object that contains simple content or a collection of content objects to be added before this token. - - - - Returns a collection of the ancestor tokens of this token. - - A collection of the ancestor tokens of this token. - - - - Returns a collection of tokens that contain this token, and the ancestors of this token. - - A collection of tokens that contain this token, and the ancestors of this token. - - - - Returns a collection of the sibling tokens after this token, in document order. - - A collection of the sibling tokens after this tokens, in document order. - - - - Returns a collection of the sibling tokens before this token, in document order. - - A collection of the sibling tokens before this token, in document order. - - - - Gets the with the specified key. - - The with the specified key. - - - - Gets the with the specified key converted to the specified type. - - The type to convert the token to. - The token key. - The converted token value. - - - - Get the first child token of this token. - - A containing the first child token of the . - - - - Get the last child token of this token. - - A containing the last child token of the . - - - - Returns a collection of the child tokens of this token, in document order. - - An of containing the child tokens of this , in document order. - - - - Returns a collection of the child tokens of this token, in document order, filtered by the specified type. - - The type to filter the child tokens on. - A containing the child tokens of this , in document order. - - - - Returns a collection of the child values of this token, in document order. - - The type to convert the values to. - A containing the child values of this , in document order. - - - - Removes this token from its parent. - - - - - Replaces this token with the specified token. - - The value. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Returns the indented JSON for this token. - - - The indented JSON for this token. - - - - - Returns the JSON for this token using the given formatting and converters. - - Indicates how the output is formatted. - A collection of which will be used when writing the token. - The JSON for this token using the given formatting and converters. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to []. - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an explicit conversion from to . - - The value. - The result of the conversion. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from [] to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Performs an implicit conversion from to . - - The value to create a from. - The initialized with the specified value. - - - - Creates an for this token. - - An that can be used to read this token and its descendants. - - - - Creates a from an object. - - The object that will be used to create . - A with the value of the specified object - - - - Creates a from an object using the specified . - - The object that will be used to create . - The that will be used when reading the object. - A with the value of the specified object - - - - Creates the specified .NET type from the . - - The object type that the token will be deserialized to. - The new object created from the JSON value. - - - - Creates the specified .NET type from the . - - The object type that the token will be deserialized to. - The new object created from the JSON value. - - - - Creates the specified .NET type from the using the specified . - - The object type that the token will be deserialized to. - The that will be used when creating the object. - The new object created from the JSON value. - - - - Creates the specified .NET type from the using the specified . - - The object type that the token will be deserialized to. - The that will be used when creating the object. - The new object created from the JSON value. - - - - Creates a from a . - - An positioned at the token to read into this . - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Creates a from a . - - An positioned at the token to read into this . - The used to load the JSON. - If this is null, default load settings will be used. - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Load a from a string that contains JSON. - - A that contains JSON. - A populated from the string that contains JSON. - - - - Load a from a string that contains JSON. - - A that contains JSON. - The used to load the JSON. - If this is null, default load settings will be used. - A populated from the string that contains JSON. - - - - Creates a from a . - - An positioned at the token to read into this . - The used to load the JSON. - If this is null, default load settings will be used. - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Creates a from a . - - An positioned at the token to read into this . - - An that contains the token and its descendant tokens - that were read from the reader. The runtime type of the token is determined - by the token type of the first token encountered in the reader. - - - - - Selects a using a JPath expression. Selects the token that matches the object path. - - - A that contains a JPath expression. - - A , or null. - - - - Selects a using a JPath expression. Selects the token that matches the object path. - - - A that contains a JPath expression. - - A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. - A . - - - - Selects a collection of elements using a JPath expression. - - - A that contains a JPath expression. - - An that contains the selected elements. - - - - Selects a collection of elements using a JPath expression. - - - A that contains a JPath expression. - - A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. - An that contains the selected elements. - - - - Returns the responsible for binding operations performed on this object. - - The expression tree representation of the runtime value. - - The to bind this object. - - - - - Returns the responsible for binding operations performed on this object. - - The expression tree representation of the runtime value. - - The to bind this object. - - - - - Creates a new instance of the . All child tokens are recursively cloned. - - A new instance of the . - - - - Adds an object to the annotation list of this . - - The annotation to add. - - - - Get the first annotation object of the specified type from this . - - The type of the annotation to retrieve. - The first annotation object that matches the specified type, or null if no annotation is of the specified type. - - - - Gets the first annotation object of the specified type from this . - - The of the annotation to retrieve. - The first annotation object that matches the specified type, or null if no annotation is of the specified type. - - - - Gets a collection of annotations of the specified type for this . - - The type of the annotations to retrieve. - An that contains the annotations for this . - - - - Gets a collection of annotations of the specified type for this . - - The of the annotations to retrieve. - An of that contains the annotations that match the specified type for this . - - - - Removes the annotations of the specified type from this . - - The type of annotations to remove. - - - - Removes the annotations of the specified type from this . - - The of annotations to remove. - - - - Compares tokens to determine whether they are equal. - - - - - Determines whether the specified objects are equal. - - The first object of type to compare. - The second object of type to compare. - - true if the specified objects are equal; otherwise, false. - - - - - Returns a hash code for the specified object. - - The for which a hash code is to be returned. - A hash code for the specified object. - The type of is a reference type and is null. - - - - Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. - - - - - Gets the at the reader's current position. - - - - - Initializes a new instance of the class. - - The token to read from. - - - - Reads the next JSON token from the stream. - - - true if the next token was read successfully; false if there are no more tokens to read. - - - - - Gets the path of the current JSON token. - - - - - Specifies the type of token. - - - - - No token type has been set. - - - - - A JSON object. - - - - - A JSON array. - - - - - A JSON constructor. - - - - - A JSON object property. - - - - - A comment. - - - - - An integer value. - - - - - A float value. - - - - - A string value. - - - - - A boolean value. - - - - - A null value. - - - - - An undefined value. - - - - - A date value. - - - - - A raw JSON value. - - - - - A collection of bytes value. - - - - - A Guid value. - - - - - A Uri value. - - - - - A TimeSpan value. - - - - - Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. - - - - - Gets the at the writer's current position. - - - - - Gets the token being writen. - - The token being writen. - - - - Initializes a new instance of the class writing to the given . - - The container being written to. - - - - Initializes a new instance of the class. - - - - - Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. - - - - - Closes this stream and the underlying stream. - - - - - Writes the beginning of a JSON object. - - - - - Writes the beginning of a JSON array. - - - - - Writes the start of a constructor with the given name. - - The name of the constructor. - - - - Writes the end. - - The token. - - - - Writes the property name of a name/value pair on a JSON object. - - The name of the property. - - - - Writes a value. - An error will raised if the value cannot be written as a single JSON token. - - The value to write. - - - - Writes a null value. - - - - - Writes an undefined value. - - - - - Writes raw JSON. - - The raw JSON to write. - - - - Writes out a comment /*...*/ containing the specified text. - - Text to place inside the comment. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a [] value. - - The [] value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Writes a value. - - The value to write. - - - - Represents a value in JSON (string, integer, date, etc). - - - - - Initializes a new instance of the class from another object. - - A object to copy from. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Initializes a new instance of the class with the given value. - - The value. - - - - Gets a value indicating whether this token has child tokens. - - - true if this token has child values; otherwise, false. - - - - - Creates a comment with the given value. - - The value. - A comment with the given value. - - - - Creates a string with the given value. - - The value. - A string with the given value. - - - - Creates a null value. - - A null value. - - - - Creates a undefined value. - - A undefined value. - - - - Gets the node type for this . - - The type. - - - - Gets or sets the underlying token value. - - The underlying token value. - - - - Writes this token to a . - - A into which this method will write. - A collection of which will be used when writing the token. - - - - Indicates whether the current object is equal to another object of the same type. - - - true if the current object is equal to the parameter; otherwise, false. - - An object to compare with this object. - - - - Determines whether the specified is equal to the current . - - The to compare with the current . - - true if the specified is equal to the current ; otherwise, false. - - - The parameter is null. - - - - - Serves as a hash function for a particular type. - - - A hash code for the current . - - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format. - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format provider. - - A that represents this instance. - - - - - Returns a that represents this instance. - - The format. - The format provider. - - A that represents this instance. - - - - - Returns the responsible for binding operations performed on this object. - - The expression tree representation of the runtime value. - - The to bind this object. - - - - - Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. - - An object to compare with this instance. - - A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: - Value - Meaning - Less than zero - This instance is less than . - Zero - This instance is equal to . - Greater than zero - This instance is greater than . - - - is not the same type as this instance. - - - - - Specifies how JSON arrays are merged together. - - - - Concatenate arrays. - - - Union arrays, skipping items that already exist. - - - Replace all array items. - - - Merge array items together, matched by index. - - - - Specifies how null value properties are merged. - - - - - The content's null value properties will be ignored during merging. - - - - - The content's null value properties will be merged. - - - - - Specifies the member serialization options for the . - - - - - All public members are serialized by default. Members can be excluded using or . - This is the default member serialization mode. - - - - - Only members marked with or are serialized. - This member serialization mode can also be set by marking the class with . - - - - - All public and private fields are serialized. Members can be excluded using or . - This member serialization mode can also be set by marking the class with - and setting IgnoreSerializableAttribute on to false. - - - - - Specifies metadata property handling options for the . - - - - - Read metadata properties located at the start of a JSON object. - - - - - Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. - - - - - Do not try to read metadata properties. - - - - - Specifies missing member handling options for the . - - - - - Ignore a missing member and do not attempt to deserialize it. - - - - - Throw a when a missing member is encountered during deserialization. - - - - - Specifies null value handling options for the . - - - - - - - - - Include null values when serializing and deserializing objects. - - - - - Ignore null values when serializing and deserializing objects. - - - - - Specifies how object creation is handled by the . - - - - - Reuse existing objects, create new objects when needed. - - - - - Only reuse existing objects. - - - - - Always create new objects. - - - - - Specifies reference handling options for the . - Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. - - - - - - - - Do not preserve references when serializing types. - - - - - Preserve references when serializing into a JSON object structure. - - - - - Preserve references when serializing into a JSON array structure. - - - - - Preserve references when serializing. - - - - - Specifies reference loop handling options for the . - - - - - Throw a when a loop is encountered. - - - - - Ignore loop references and do not serialize. - - - - - Serialize loop references. - - - - - Indicating whether a property is required. - - - - - The property is not required. The default state. - - - - - The property must be defined in JSON but can be a null value. - - - - - The property must be defined in JSON and cannot be a null value. - - - - - The property is not required but it cannot be a null value. - - - - - Allows users to control class loading and mandate what class to load. - - - - - When overridden in a derived class, controls the binding of a serialized object to a type. - - Specifies the name of the serialized object. - Specifies the name of the serialized object - The type of the object the formatter creates a new instance of. - - - - When overridden in a derived class, controls the binding of a serialized object to a type. - - The type of the object the formatter creates a new instance of. - Specifies the name of the serialized object. - Specifies the name of the serialized object. - - - - Resolves member mappings for a type, camel casing property names. - - - - - Initializes a new instance of the class. - - - - - Resolves the name of the property. - - Name of the property. - The property name camel cased. - - - - Get and set values for a using dynamic methods. - - - - - Initializes a new instance of the class. - - The member info. - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - Used by to resolves a for a given . - - - - - Gets a value indicating whether members are being get and set using dynamic code generation. - This value is determined by the runtime permissions available. - - - true if using dynamic code generation; otherwise, false. - - - - - Gets or sets a value indicating whether compiler generated members should be serialized. - - - true if serialized compiler generated members; otherwise, false. - - - - - Initializes a new instance of the class. - - - - - Initializes a new instance of the class. - - - If set to true the will use a cached shared with other resolvers of the same type. - Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only - happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different - results. When set to false it is highly recommended to reuse instances with the . - - - - - Resolves the contract for a given type. - - The type to resolve a contract for. - The contract for a given type. - - - - Gets the serializable members for the type. - - The type to get serializable members for. - The serializable members for the type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates the constructor parameters. - - The constructor to create properties for. - The type's member properties. - Properties for the given . - - - - Creates a for the given . - - The matching member property. - The constructor parameter. - A created for the given . - - - - Resolves the default for the contract. - - Type of the object. - The contract's default . - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Creates a for the given type. - - Type of the object. - A for the given type. - - - - Determines which contract type is created for the given type. - - Type of the object. - A for the given type. - - - - Creates properties for the given . - - The type to create properties for. - /// The member serialization mode for the type. - Properties for the given . - - - - Creates the used by the serializer to get and set values from a member. - - The member. - The used by the serializer to get and set values from a member. - - - - Creates a for the given . - - The member's parent . - The member to create a for. - A created for the given . - - - - Resolves the name of the property. - - Name of the property. - Resolved name of the property. - - - - Resolves the key of the dictionary. By default is used to resolve dictionary keys. - - Key of the dictionary. - Resolved key of the dictionary. - - - - Gets the resolved name of the property. - - Name of the property. - Name of the property. - - - - The default serialization binder used when resolving and loading classes from type names. - - - - - When overridden in a derived class, controls the binding of a serialized object to a type. - - Specifies the name of the serialized object. - Specifies the name of the serialized object. - - The type of the object the formatter creates a new instance of. - - - - - When overridden in a derived class, controls the binding of a serialized object to a type. - - The type of the object the formatter creates a new instance of. - Specifies the name of the serialized object. - Specifies the name of the serialized object. - - - - Provides information surrounding an error. - - - - - Gets the error. - - The error. - - - - Gets the original object that caused the error. - - The original object that caused the error. - - - - Gets the member that caused the error. - - The member that caused the error. - - - - Gets the path of the JSON location where the error occurred. - - The path of the JSON location where the error occurred. - - - - Gets or sets a value indicating whether this is handled. - - true if handled; otherwise, false. - - - - Provides data for the Error event. - - - - - Gets the current object the error event is being raised against. - - The current object the error event is being raised against. - - - - Gets the error context. - - The error context. - - - - Initializes a new instance of the class. - - The current object. - The error context. - - - - Provides methods to get attributes. - - - - - Returns a collection of all of the attributes, or an empty collection if there are no attributes. - - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. - - The type of the attributes. - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Used by to resolves a for a given . - - - - - - - - - Resolves the contract for a given type. - - The type to resolve a contract for. - The contract for a given type. - - - - Used to resolve references when serializing and deserializing JSON by the . - - - - - Resolves a reference to its object. - - The serialization context. - The reference to resolve. - The object that - - - - Gets the reference for the sepecified object. - - The serialization context. - The object to get a reference for. - The reference to the object. - - - - Determines whether the specified object is referenced. - - The serialization context. - The object to test for a reference. - - true if the specified object is referenced; otherwise, false. - - - - - Adds a reference to the specified object. - - The serialization context. - The reference. - The object to reference. - - - - Represents a trace writer. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - The that will be used to filter the trace messages passed to the writer. - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Provides methods to get and set values. - - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - Contract details for a used by the . - - - - - Gets the of the collection items. - - The of the collection items. - - - - Gets a value indicating whether the collection type is a multidimensional array. - - true if the collection type is a multidimensional array; otherwise, false. - - - - Gets or sets the function used to create the object. When set this function will override . - - The function used to create the object. - - - - Gets a value indicating whether the creator has a parameter with the collection values. - - true if the creator has a parameter with the collection values; otherwise, false. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Gets or sets the default collection items . - - The converter. - - - - Gets or sets a value indicating whether the collection items preserve object references. - - true if collection items preserve object references; otherwise, false. - - - - Gets or sets the collection item reference loop handling. - - The reference loop handling. - - - - Gets or sets the collection item type name handling. - - The type name handling. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Handles serialization callback events. - - The object that raised the callback event. - The streaming context. - - - - Handles serialization error callback events. - - The object that raised the callback event. - The streaming context. - The error context. - - - - Sets extension data for an object during deserialization. - - The object to set extension data on. - The extension data key. - The extension data value. - - - - Gets extension data for an object during serialization. - - The object to set extension data on. - - - - Contract details for a used by the . - - - - - Gets the underlying type for the contract. - - The underlying type for the contract. - - - - Gets or sets the type created during deserialization. - - The type created during deserialization. - - - - Gets or sets whether this type contract is serialized as a reference. - - Whether this type contract is serialized as a reference. - - - - Gets or sets the default for this contract. - - The converter. - - - - Gets or sets all methods called immediately after deserialization of the object. - - The methods called immediately after deserialization of the object. - - - - Gets or sets all methods called during deserialization of the object. - - The methods called during deserialization of the object. - - - - Gets or sets all methods called after serialization of the object graph. - - The methods called after serialization of the object graph. - - - - Gets or sets all methods called before serialization of the object. - - The methods called before serialization of the object. - - - - Gets or sets all method called when an error is thrown during the serialization of the object. - - The methods called when an error is thrown during the serialization of the object. - - - - Gets or sets the method called immediately after deserialization of the object. - - The method called immediately after deserialization of the object. - - - - Gets or sets the method called during deserialization of the object. - - The method called during deserialization of the object. - - - - Gets or sets the method called after serialization of the object graph. - - The method called after serialization of the object graph. - - - - Gets or sets the method called before serialization of the object. - - The method called before serialization of the object. - - - - Gets or sets the method called when an error is thrown during the serialization of the object. - - The method called when an error is thrown during the serialization of the object. - - - - Gets or sets the default creator method used to create the object. - - The default creator method used to create the object. - - - - Gets or sets a value indicating whether the default creator is non public. - - true if the default object creator is non-public; otherwise, false. - - - - Contract details for a used by the . - - - - - Gets or sets the property name resolver. - - The property name resolver. - - - - Gets or sets the dictionary key resolver. - - The dictionary key resolver. - - - - Gets the of the dictionary keys. - - The of the dictionary keys. - - - - Gets the of the dictionary values. - - The of the dictionary values. - - - - Gets or sets the function used to create the object. When set this function will override . - - The function used to create the object. - - - - Gets a value indicating whether the creator has a parameter with the dictionary values. - - true if the creator has a parameter with the dictionary values; otherwise, false. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Gets the object's properties. - - The object's properties. - - - - Gets or sets the property name resolver. - - The property name resolver. - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Gets or sets the object member serialization. - - The member object serialization. - - - - Gets or sets a value that indicates whether the object's properties are required. - - - A value indicating whether the object's properties are required. - - - - - Gets the object's properties. - - The object's properties. - - - - Gets the constructor parameters required for any non-default constructor - - - - - Gets a collection of instances that define the parameters used with . - - - - - Gets or sets the override constructor used to create the object. - This is set when a constructor is marked up using the - JsonConstructor attribute. - - The override constructor. - - - - Gets or sets the parametrized constructor used to create the object. - - The parametrized constructor. - - - - Gets or sets the function used to create the object. When set this function will override . - This function is called with a collection of arguments which are defined by the collection. - - The function used to create the object. - - - - Gets or sets the extension data setter. - - - - - Gets or sets the extension data getter. - - - - - Gets or sets the extension data value type. - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Maps a JSON property to a .NET member or constructor parameter. - - - - - Gets or sets the name of the property. - - The name of the property. - - - - Gets or sets the type that declared this property. - - The type that declared this property. - - - - Gets or sets the order of serialization of a member. - - The numeric order of serialization. - - - - Gets or sets the name of the underlying member or parameter. - - The name of the underlying member or parameter. - - - - Gets the that will get and set the during serialization. - - The that will get and set the during serialization. - - - - Gets or sets the for this property. - - The for this property. - - - - Gets or sets the type of the property. - - The type of the property. - - - - Gets or sets the for the property. - If set this converter takes presidence over the contract converter for the property type. - - The converter. - - - - Gets or sets the member converter. - - The member converter. - - - - Gets or sets a value indicating whether this is ignored. - - true if ignored; otherwise, false. - - - - Gets or sets a value indicating whether this is readable. - - true if readable; otherwise, false. - - - - Gets or sets a value indicating whether this is writable. - - true if writable; otherwise, false. - - - - Gets or sets a value indicating whether this has a member attribute. - - true if has a member attribute; otherwise, false. - - - - Gets the default value. - - The default value. - - - - Gets or sets a value indicating whether this is required. - - A value indicating whether this is required. - - - - Gets or sets a value indicating whether this property preserves object references. - - - true if this instance is reference; otherwise, false. - - - - - Gets or sets the property null value handling. - - The null value handling. - - - - Gets or sets the property default value handling. - - The default value handling. - - - - Gets or sets the property reference loop handling. - - The reference loop handling. - - - - Gets or sets the property object creation handling. - - The object creation handling. - - - - Gets or sets or sets the type name handling. - - The type name handling. - - - - Gets or sets a predicate used to determine whether the property should be serialize. - - A predicate used to determine whether the property should be serialize. - - - - Gets or sets a predicate used to determine whether the property should be deserialized. - - A predicate used to determine whether the property should be deserialized. - - - - Gets or sets a predicate used to determine whether the property should be serialized. - - A predicate used to determine whether the property should be serialized. - - - - Gets or sets an action used to set whether the property has been deserialized. - - An action used to set whether the property has been deserialized. - - - - Returns a that represents this instance. - - - A that represents this instance. - - - - - Gets or sets the converter used when serializing the property's collection items. - - The collection's items converter. - - - - Gets or sets whether this property's collection items are serialized as a reference. - - Whether this property's collection items are serialized as a reference. - - - - Gets or sets the the type name handling used when serializing the property's collection items. - - The collection's items type name handling. - - - - Gets or sets the the reference loop handling used when serializing the property's collection items. - - The collection's items reference loop handling. - - - - A collection of objects. - - - - - Initializes a new instance of the class. - - The type. - - - - When implemented in a derived class, extracts the key from the specified element. - - The element from which to extract the key. - The key for the specified element. - - - - Adds a object. - - The property to add to the collection. - - - - Gets the closest matching object. - First attempts to get an exact case match of propertyName and then - a case insensitive match. - - Name of the property. - A matching property if found. - - - - Gets a property by property name. - - The name of the property to get. - Type property name string comparison. - A matching property if found. - - - - Contract details for a used by the . - - - - - Initializes a new instance of the class. - - The underlying type for the contract. - - - - Lookup and create an instance of the JsonConverter type described by the argument. - - The JsonConverter type to create. - Optional arguments to pass to an initializing constructor of the JsonConverter. - If null, the default constructor is used. - - - - Create a factory function that can be used to create instances of a JsonConverter described by the - argument type. The returned function can then be used to either invoke the converter's default ctor, or any - parameterized constructors by way of an object array. - - - - - Represents a trace writer that writes to memory. When the trace message limit is - reached then old trace messages will be removed as new messages are added. - - - - - Gets the that will be used to filter the trace messages passed to the writer. - For example a filter level of Info will exclude Verbose messages and include Info, - Warning and Error messages. - - - The that will be used to filter the trace messages passed to the writer. - - - - - Initializes a new instance of the class. - - - - - Writes the specified trace level, message and optional exception. - - The at which to write this trace. - The trace message. - The trace exception. This parameter is optional. - - - - Returns an enumeration of the most recent trace messages. - - An enumeration of the most recent trace messages. - - - - Returns a of the most recent trace messages. - - - A of the most recent trace messages. - - - - - Represents a method that constructs an object. - - The object type to create. - - - - When applied to a method, specifies that the method is called when an error occurs serializing an object. - - - - - Provides methods to get attributes from a , , or . - - - - - Initializes a new instance of the class. - - The instance to get attributes for. This parameter should be a , , or . - - - - Returns a collection of all of the attributes, or an empty collection if there are no attributes. - - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. - - The type of the attributes. - When true, look up the hierarchy chain for the inherited custom attribute. - A collection of s, or an empty collection. - - - - Get and set values for a using reflection. - - - - - Initializes a new instance of the class. - - The member info. - - - - Sets the value. - - The target to set the value on. - The value to set on the target. - - - - Gets the value. - - The target to get the value from. - The value. - - - - Specifies how strings are escaped when writing JSON text. - - - - - Only control characters (e.g. newline) are escaped. - - - - - All non-ASCII and control characters (e.g. newline) are escaped. - - - - - HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. - - - - - Specifies what messages to output for the class. - - - - - Output no tracing and debugging messages. - - - - - Output error-handling messages. - - - - - Output warnings and error-handling messages. - - - - - Output informational messages, warnings, and error-handling messages. - - - - - Output all debugging and tracing messages. - - - - - Specifies type name handling options for the . - - - should be used with caution when your application deserializes JSON from an external source. - Incoming types should be validated with a custom - when deserializing with a value other than TypeNameHandling.None. - - - - - Do not include the .NET type name when serializing types. - - - - - Include the .NET type name when serializing into a JSON object structure. - - - - - Include the .NET type name when serializing into a JSON array structure. - - - - - Always include the .NET type name when serializing. - - - - - Include the .NET type name when the type of the object being serialized is not the same as its declared type. - - - - - Determines whether the collection is null or empty. - - The collection. - - true if the collection is null or empty; otherwise, false. - - - - - Adds the elements of the specified collection to the specified generic IList. - - The list to add to. - The collection of elements to add. - - - - Converts the value to the specified type. If the value is unable to be converted, the - value is checked whether it assignable to the specified type. - - The value to convert. - The culture to use when converting. - The type to convert or cast the value to. - - The converted type. If conversion was unsuccessful, the initial value - is returned if assignable to the target type. - - - - - Helper method for generating a MetaObject which calls a - specific method on Dynamic that returns a result - - - - - Helper method for generating a MetaObject which calls a - specific method on Dynamic, but uses one of the arguments for - the result. - - - - - Helper method for generating a MetaObject which calls a - specific method on Dynamic, but uses one of the arguments for - the result. - - - - - Returns a Restrictions object which includes our current restrictions merged - with a restriction limiting our type - - - - - Gets a dictionary of the names and values of an Enum type. - - - - - - Gets a dictionary of the names and values of an Enum type. - - The enum type to get names and values for. - - - - - Gets the type of the typed collection's items. - - The type. - The type of the typed collection's items. - - - - Gets the member's underlying type. - - The member. - The underlying type of the member. - - - - Determines whether the member is an indexed property. - - The member. - - true if the member is an indexed property; otherwise, false. - - - - - Determines whether the property is an indexed property. - - The property. - - true if the property is an indexed property; otherwise, false. - - - - - Gets the member's value on the object. - - The member. - The target object. - The member's value on the object. - - - - Sets the member's value on the target object. - - The member. - The target. - The value. - - - - Determines whether the specified MemberInfo can be read. - - The MemberInfo to determine whether can be read. - /// if set to true then allow the member to be gotten non-publicly. - - true if the specified MemberInfo can be read; otherwise, false. - - - - - Determines whether the specified MemberInfo can be set. - - The MemberInfo to determine whether can be set. - if set to true then allow the member to be set non-publicly. - if set to true then allow the member to be set if read-only. - - true if the specified MemberInfo can be set; otherwise, false. - - - - - Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. - - - - - Determines whether the string is all white space. Empty string will return false. - - The string to test whether it is all white space. - - true if the string is all white space; otherwise, false. - - - - - Nulls an empty string. - - The string. - Null if the string was null, otherwise the string unchanged. - - - - Specifies the state of the . - - - - - An exception has been thrown, which has left the in an invalid state. - You may call the method to put the in the Closed state. - Any other method calls results in an being thrown. - - - - - The method has been called. - - - - - An object is being written. - - - - - A array is being written. - - - - - A constructor is being written. - - - - - A property is being written. - - - - - A write method has not been called. - - - - - Indicates the method that will be used during deserialization for locating and loading assemblies. - - - - - In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method is used to load the assembly. - - - - - In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the Assembly class is used to load the assembly. - - - - + + + + Newtonsoft.Json + + + + + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets or sets a value indicating whether binary data reading should compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the class. + + The reader. + + + + Initializes a new instance of the class. + + The stream. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The reader. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the to Closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The stream. + + + + Initializes a new instance of the class. + + The writer. + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this stream and the underlying stream. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to single paramatized constructor, then the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a paramatized constructor. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Create a custom object + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + + + + + + + + + + + + + + Converts an ExpandoObject to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + + + + + + + + Converts a to and from the ISO 8601 date format (e.g. 2008-04-12T12:53Z). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed. + + true if integers are allowed; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Json Converter for Vector2, Vector3 and Vector4. Only serializes x, y, (z) and (w) properties. + + + + + Default Constructor - All Vector types enabled by default + + + + + Selectively enable Vector types + + Use for Vector2 objects + Use for Vector3 objects + Use for Vector4 objects + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produces multiple root elements. + + The name of the deserialize root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attibute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the attributeName is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + True if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that is is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and sets members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent a array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if LineNumber and LinePosition can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, HasLineInfo returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, HasLineInfo returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the JsonConverter described by ItemConverterType. + If null, the default constructor is used. + When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, + order, and type of these parameters. + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between common language runtime types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output is formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output is formatted. + A collection converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + A JSON string representation of the object. + + + + + Asynchronously serializes the specified object to a JSON string. + Serialization will happen on a new thread. + + The object to serialize. + + A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. + + + + + Asynchronously serializes the specified object to a JSON string using formatting. + Serialization will happen on a new thread. + + The object to serialize. + Indicates how the output is formatted. + + A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. + + + + + Asynchronously serializes the specified object to a JSON string using formatting and a collection of . + Serialization will happen on a new thread. + + The object to serialize. + Indicates how the output is formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A task that represents the asynchronous serialize operation. The value of the TResult parameter contains a JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be infered from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be infered from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Asynchronously deserializes the JSON to the specified .NET type. + Deserialization will happen on a new thread. + + The type of the object to deserialize to. + The JSON to deserialize. + + A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. + + + + + Asynchronously deserializes the JSON to the specified .NET type using . + Deserialization will happen on a new thread. + + The type of the object to deserialize to. + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. + + + + + Asynchronously deserializes the JSON to the specified .NET type. + Deserialization will happen on a new thread. + + The JSON to deserialize. + + A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. + + + + + Asynchronously deserializes the JSON to the specified .NET type using . + Deserialization will happen on a new thread. + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + A task that represents the asynchronous deserialize operation. The value of the TResult parameter contains the deserialized object from the JSON string. + + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Asynchronously populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + A task that represents the asynchronous populate operation. + + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the XNode. + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output is formatted. + A JSON string of the XNode. + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output is formatted. + Omits writing the root object. + A JSON string of the XNode. + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized XNode + + + + Deserializes the from a JSON string nested in a root elment specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized XNode + + + + Deserializes the from a JSON string nested in a root elment specified by + and writes a .NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized XNode + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the converter. + + The of the converter. + + + + The parameter list to use when constructing the JsonConverter described by ConverterType. + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the converter. + + + + Initializes a new instance of the class. + + Type of the converter. + Parameter list to use when constructing the JsonConverter. Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + The parameter list to use when constructing the JsonConverter described by ItemConverterType. + If null, the default constructor is used. + When non-null, there must be a constructor defined in the JsonConverter that exactly matches the number, + order, and type of these parameters. + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Specifies the state of the reader. + + + + + The Read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The Close method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the underlying stream or + should be closed when the reader is closed. + + + true to close the underlying stream or when + the reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Get or set how time zones are handling when reading JSON. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets The Common Language Runtime (CLR) type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class with the specified . + + + + + Reads the next JSON token from the stream. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a []. + + A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the state based on current token type. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the to Closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Instructs the to always serialize the member, and require the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + + + + + Get or set how reference loops (e.g. a class referencing itself) is handled. + + + + + Get or set how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + + + + + Get or set how null values are handled during serialization and deserialization. + + + + + Get or set how null default are handled during serialization and deserialization. + + + + + Gets or sets how objects are created during deserialization. + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling during serialization and deserialization. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written as JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifing the type is optional. + + + + + Serializes the specified and writes the JSON structure + to a Stream using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + + Null value handling. + + + + Gets or sets how null default are handled during serialization and deserialization. + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Get or set how and values are formatted when writing JSON text, and the expected date format when reading JSON text. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling during serialization and deserialization. + + + + + Get or set how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written as JSON. + + + + + Get or set how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Initializes a new instance of the class with the specified . + + The TextReader containing the XML data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a []. + + A [] or a null reference if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the stream as a . + + A . This method will return null at the end of an array. + + + + Changes the state to closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if LineNumber and LinePosition can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, HasLineInfo returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, HasLineInfo returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many IndentChars to write for each level in the hierarchy when is set to Formatting.Indented. + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to Formatting.Indented. + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Creates an instance of the JsonWriter class using the specified . + + The TextWriter to write to. + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes out the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets or sets a value indicating whether the underlying stream or + should be closed when the writer is closed. + + + true to close the underlying stream or when + the writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Indicates how JSON text output is formatted. + + + + + Get or set how dates are written to JSON text. + + + + + Get or set how time zones are handling when writing JSON text. + + + + + Get or set how strings are escaped when writing JSON text. + + + + + Get or set how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Get or set how and values are formatting when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Creates an instance of the JsonWriter class. + + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + A null value can be passed to the method for token's that don't have a value, e.g. . + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes out the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the JsonWriter, + + The JsonToken being written. + The value being written. + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token + + + + Gets the with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + The is read-only. + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + The is read-only. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + The is read-only. + + + + Removes all items from the . + + The is read-only. + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies to. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + The is read-only. + + + + Represents a JSON constructor. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates an that can be used to add tokens to the . + + An that is ready to have content written to it. + + + + Replaces the children nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens + + + + Represents a collection of objects. + + The type of token + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + Gets the with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of this object's properties. + + An of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets an of this object's property values. + + An of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries the get value. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that iterates through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a raw JSON string. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output is formatted. + A collection of which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Creates an for this token. + + An that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object + + + + Creates the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + An positioned at the token to read into this . + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + + An that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the stream. + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being writen. + + The token being writen. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying streams and also flushes the underlying stream. + + + + + Closes this stream and the underlying stream. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes out a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + The parameter is null. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not the same type as this instance. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement ISerializable. + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + Allows users to control class loading and mandate what class to load. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the name of the property. + + Name of the property. + The property name camel cased. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Used by to resolves a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + If set to true the will use a cached shared with other resolvers of the same type. + Sharing the cache will significantly improve performance with multiple resolver instances because expensive reflection will only + happen once. This setting can cause unexpected behavior if different instances of the resolver are suppose to produce different + results. When set to false it is highly recommended to reuse instances with the . + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolves a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that + + + + Gets the reference for the sepecified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the method called immediately after deserialization of the object. + + The method called immediately after deserialization of the object. + + + + Gets or sets the method called during deserialization of the object. + + The method called during deserialization of the object. + + + + Gets or sets the method called after serialization of the object graph. + + The method called after serialization of the object graph. + + + + Gets or sets the method called before serialization of the object. + + The method called before serialization of the object. + + + + Gets or sets the method called when an error is thrown during the serialization of the object. + + The method called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets the object's properties. + + The object's properties. + + + + Gets the constructor parameters required for any non-default constructor + + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the override constructor used to create the object. + This is set when a constructor is marked up using the + JsonConstructor attribute. + + The override constructor. + + + + Gets or sets the parametrized constructor used to create the object. + + The parametrized constructor. + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes presidence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialize. + + A predicate used to determine whether the property should be serialize. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of propertyName and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the JsonConverter type described by the argument. + + The JsonConverter type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Create a factory function that can be used to create instances of a JsonConverter described by the + argument type. The returned function can then be used to either invoke the converter's default ctor, or any + parameterized constructors by way of an object array. + + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of Info will exclude Verbose messages and include Info, + Warning and Error messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Specifies what messages to output for the class. + + + + + Output no tracing and debugging messages. + + + + + Output error-handling messages. + + + + + Output warnings and error-handling messages. + + + + + Output informational messages, warnings, and error-handling messages. + + + + + Output all debugging and tracing messages. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than TypeNameHandling.None. + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic IList. + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Gets a dictionary of the names and values of an Enum type. + + + + + + Gets a dictionary of the names and values of an Enum type. + + The enum type to get names and values for. + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike StringBuilder this class lets you reuse it's internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Nulls an empty string. + + The string. + Null if the string was null, otherwise the string unchanged. + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls results in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + A array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the Assembly class is used to load the assembly. + + + + diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML.meta index 770c1e6..c4619d0 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.XML.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 36f7323c55864364d8bb88c736e4bca6 -timeCreated: 1466788355 -licenseType: Store -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 36f7323c55864364d8bb88c736e4bca6 +timeCreated: 1466788355 +licenseType: Store +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll.meta index 5ff0986..b91baae --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Assemblies/Windows/Newtonsoft.Json.dll.meta @@ -1,67 +1,67 @@ -fileFormatVersion: 2 -guid: 9b6ba260dada0ea4a871a42011f8b87d -timeCreated: 1466788355 -licenseType: Store -PluginImporter: - serializedVersion: 1 - iconMap: {} - executionOrder: {} - isPreloaded: 0 - platformData: - Android: - enabled: 0 - settings: - CPU: AnyCPU - Any: - enabled: 0 - settings: {} - Editor: - enabled: 0 - settings: - CPU: AnyCPU - DefaultValueInitialized: true - OS: AnyOS - Linux: - enabled: 0 - settings: - CPU: x86 - Linux64: - enabled: 0 - settings: - CPU: x86_64 - OSXIntel: - enabled: 0 - settings: - CPU: AnyCPU - OSXIntel64: - enabled: 0 - settings: - CPU: AnyCPU - SamsungTV: - enabled: 0 - settings: - STV_MODEL: STANDARD_13 - Win: - enabled: 0 - settings: - CPU: AnyCPU - Win64: - enabled: 0 - settings: - CPU: AnyCPU - WindowsStoreApps: - enabled: 1 - settings: - CPU: AnyCPU - DontProcess: False - PlaceholderPath: Assets/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll - SDK: AnySDK - ScriptingBackend: DotNet - iOS: - enabled: 0 - settings: - CompileFlags: - FrameworkDependencies: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 9b6ba260dada0ea4a871a42011f8b87d +timeCreated: 1466788355 +licenseType: Store +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + platformData: + Android: + enabled: 0 + settings: + CPU: AnyCPU + Any: + enabled: 0 + settings: {} + Editor: + enabled: 0 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + Linux: + enabled: 0 + settings: + CPU: x86 + Linux64: + enabled: 0 + settings: + CPU: x86_64 + OSXIntel: + enabled: 0 + settings: + CPU: AnyCPU + OSXIntel64: + enabled: 0 + settings: + CPU: AnyCPU + SamsungTV: + enabled: 0 + settings: + STV_MODEL: STANDARD_13 + Win: + enabled: 0 + settings: + CPU: AnyCPU + Win64: + enabled: 0 + settings: + CPU: AnyCPU + WindowsStoreApps: + enabled: 1 + settings: + CPU: AnyCPU + DontProcess: False + PlaceholderPath: Assets/JsonDotNet/Assemblies/Standalone/Newtonsoft.Json.dll + SDK: AnySDK + ScriptingBackend: DotNet + iOS: + enabled: 0 + settings: + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation.meta index caaceeb..cda8075 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 76f828f47ce26cc43991113c6a39dbbf -folderAsset: yes -timeCreated: 1466010535 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 76f828f47ce26cc43991113c6a39dbbf +folderAsset: yes +timeCreated: 1466010535 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf b/unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf.meta index 0f4060b..e5d0257 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/Documentation/Json Net for Unity 2.0.1.pdf.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 4e7d9a07cc3f02a41a575406e7230846 -timeCreated: 1466788421 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 4e7d9a07cc3f02a41a575406e7230846 +timeCreated: 1466788421 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip b/unity_FACSvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip rename to unity_FACSvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip.meta index a77e9c2..c846be6 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/JsonDotNet201Source.zip.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 9a6f8c7c1ea72ce46831c5e1b6150d0c -timeCreated: 1466790933 -licenseType: Store -DefaultImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 9a6f8c7c1ea72ce46831c5e1b6150d0c +timeCreated: 1466790933 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/link.xml b/unity_FACSvatar/Assets/Packages/JsonDotNet/link.xml old mode 100755 new mode 100644 similarity index 94% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/link.xml rename to unity_FACSvatar/Assets/Packages/JsonDotNet/link.xml index cac3e06..cf188f8 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/link.xml +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/link.xml @@ -1,7 +1,7 @@ - - - - - - + + + + + + \ No newline at end of file diff --git a/unity_FACSAvatar/Assets/Packages/JsonDotNet/link.xml.meta b/unity_FACSvatar/Assets/Packages/JsonDotNet/link.xml.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/JsonDotNet/link.xml.meta rename to unity_FACSvatar/Assets/Packages/JsonDotNet/link.xml.meta index 52c4979..1e0e273 --- a/unity_FACSAvatar/Assets/Packages/JsonDotNet/link.xml.meta +++ b/unity_FACSvatar/Assets/Packages/JsonDotNet/link.xml.meta @@ -1,6 +1,6 @@ -fileFormatVersion: 2 -guid: 06314f49bdda26043963578d60a0a7ee -TextScriptImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 06314f49bdda26043963578d60a0a7ee +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher.meta b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher.meta rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher.meta diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE old mode 100755 new mode 100644 similarity index 98% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE index c0ee812..8dada3e --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE @@ -1,201 +1,201 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "{}" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright {yyyy} {name of copyright owner} - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE.meta b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE.meta rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE.meta index 5440649..ec25413 --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE.meta +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/LICENSE.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 1367af8e3e029469980ac431b7585dec -timeCreated: 1517998268 -licenseType: Free -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 1367af8e3e029469980ac431b7585dec +timeCreated: 1517998268 +licenseType: Free +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/README.md b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/README.md old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/README.md rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/README.md index d2a50d9..257a899 --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/README.md +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/README.md @@ -1,42 +1,42 @@ -# UnityMainThreadDispatcher - -A thread-safe way of dispatching IEnumerator functions to the main thread in unity. Useful for calling UI functions and other actions that Unity limits to the main thread from different threads. -### Version -1.0 - Tested and functional in one or more production mobile games (including https://get-wrecked.com) - -### Installation - -No dependencies needed other than Unity. This script was created in Unity 5.3, and has been tested in 5.3, 5.4, and 5.5. - -1. Download the UnityMainThreadDispatcher prefab and add it to your scene, or simple create an empty GameObject, call it UnityMainThreadDispatcher. -2. Download the UnityMainThreadDispatcher.cs script and add it to your prefab -3. You can now dispatch objects to the main thread in Unity. - -### Usage -```C# - public IEnumerator ThisWillBeExecutedOnTheMainThread() { - Debug.Log ("This is executed from the main thread"); - yield return null; - } - public void ExampleMainThreadCall() { - UnityMainThreadDispatcher.Instance().Enqueue(ThisWillBeExecutedOnTheMainThread()); - } -``` -OR - -```C# - UnityMainThreadDispatcher.Instance().Enqueue(() => Debug.Log ("This is executed from the main thread")); -``` -### Development - -Want to contribute? Great! If you find a bug or want to make improvements, simply fork the repo and make a pull request with your changes on your own fork. - -### Author -@PimDeWitte - - - - - - - +# UnityMainThreadDispatcher + +A thread-safe way of dispatching IEnumerator functions to the main thread in unity. Useful for calling UI functions and other actions that Unity limits to the main thread from different threads. +### Version +1.0 - Tested and functional in one or more production mobile games (including https://get-wrecked.com) + +### Installation + +No dependencies needed other than Unity. This script was created in Unity 5.3, and has been tested in 5.3, 5.4, and 5.5. + +1. Download the UnityMainThreadDispatcher prefab and add it to your scene, or simple create an empty GameObject, call it UnityMainThreadDispatcher. +2. Download the UnityMainThreadDispatcher.cs script and add it to your prefab +3. You can now dispatch objects to the main thread in Unity. + +### Usage +```C# + public IEnumerator ThisWillBeExecutedOnTheMainThread() { + Debug.Log ("This is executed from the main thread"); + yield return null; + } + public void ExampleMainThreadCall() { + UnityMainThreadDispatcher.Instance().Enqueue(ThisWillBeExecutedOnTheMainThread()); + } +``` +OR + +```C# + UnityMainThreadDispatcher.Instance().Enqueue(() => Debug.Log ("This is executed from the main thread")); +``` +### Development + +Want to contribute? Great! If you find a bug or want to make improvements, simply fork the repo and make a pull request with your changes on your own fork. + +### Author +@PimDeWitte + + + + + + + diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/README.md.meta b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/README.md.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/README.md.meta rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/README.md.meta index 26a5f17..14c993a --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/README.md.meta +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/README.md.meta @@ -1,9 +1,9 @@ -fileFormatVersion: 2 -guid: 2a1b9f2221de6421da32e9787a1ef7d7 -timeCreated: 1517998268 -licenseType: Free -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 2a1b9f2221de6421da32e9787a1ef7d7 +timeCreated: 1517998268 +licenseType: Free +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs old mode 100755 new mode 100644 similarity index 96% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs index 3471172..081e71c --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs @@ -1,92 +1,92 @@ -/* -Copyright 2015 Pim de Witte All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -using UnityEngine; -using System.Collections; -using System.Collections.Generic; -using System; - -/// Author: Pim de Witte (pimdewitte.com) and contributors -/// -/// A thread-safe class which holds a queue with actions to execute on the next Update() method. It can be used to make calls to the main thread for -/// things such as UI Manipulation in Unity. It was developed for use in combination with the Firebase Unity plugin, which uses separate threads for event handling -/// -public class UnityMainThreadDispatcher : MonoBehaviour { - - private static readonly Queue _executionQueue = new Queue(); - - public void Update() { - lock(_executionQueue) { - while (_executionQueue.Count > 0) { - _executionQueue.Dequeue().Invoke(); - } - } - } - - /// - /// Locks the queue and adds the IEnumerator to the queue - /// - /// IEnumerator function that will be executed from the main thread. - public void Enqueue(IEnumerator action) { - lock (_executionQueue) { - _executionQueue.Enqueue (() => { - StartCoroutine (action); - }); - } - } - - /// - /// Locks the queue and adds the Action to the queue - /// - /// function that will be executed from the main thread. - public void Enqueue(Action action) - { - Enqueue(ActionWrapper(action)); - } - IEnumerator ActionWrapper(Action a) - { - a(); - yield return null; - } - - - private static UnityMainThreadDispatcher _instance = null; - - public static bool Exists() { - return _instance != null; - } - - public static UnityMainThreadDispatcher Instance() { - if (!Exists ()) { - throw new Exception ("UnityMainThreadDispatcher could not find the UnityMainThreadDispatcher object. Please ensure you have added the MainThreadExecutor Prefab to your scene."); - } - return _instance; - } - - - void Awake() { - if (_instance == null) { - _instance = this; - DontDestroyOnLoad(this.gameObject); - } - } - - void OnDestroy() { - _instance = null; - } - - -} +/* +Copyright 2015 Pim de Witte All Rights Reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +using UnityEngine; +using System.Collections; +using System.Collections.Generic; +using System; + +/// Author: Pim de Witte (pimdewitte.com) and contributors +/// +/// A thread-safe class which holds a queue with actions to execute on the next Update() method. It can be used to make calls to the main thread for +/// things such as UI Manipulation in Unity. It was developed for use in combination with the Firebase Unity plugin, which uses separate threads for event handling +/// +public class UnityMainThreadDispatcher : MonoBehaviour { + + private static readonly Queue _executionQueue = new Queue(); + + public void Update() { + lock(_executionQueue) { + while (_executionQueue.Count > 0) { + _executionQueue.Dequeue().Invoke(); + } + } + } + + /// + /// Locks the queue and adds the IEnumerator to the queue + /// + /// IEnumerator function that will be executed from the main thread. + public void Enqueue(IEnumerator action) { + lock (_executionQueue) { + _executionQueue.Enqueue (() => { + StartCoroutine (action); + }); + } + } + + /// + /// Locks the queue and adds the Action to the queue + /// + /// function that will be executed from the main thread. + public void Enqueue(Action action) + { + Enqueue(ActionWrapper(action)); + } + IEnumerator ActionWrapper(Action a) + { + a(); + yield return null; + } + + + private static UnityMainThreadDispatcher _instance = null; + + public static bool Exists() { + return _instance != null; + } + + public static UnityMainThreadDispatcher Instance() { + if (!Exists ()) { + throw new Exception ("UnityMainThreadDispatcher could not find the UnityMainThreadDispatcher object. Please ensure you have added the MainThreadExecutor Prefab to your scene."); + } + return _instance; + } + + + void Awake() { + if (_instance == null) { + _instance = this; + DontDestroyOnLoad(this.gameObject); + } + } + + void OnDestroy() { + _instance = null; + } + + +} diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs.meta b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs.meta rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs.meta index c2c3fc4..cdfc1ce --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs.meta +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.cs.meta @@ -1,12 +1,12 @@ -fileFormatVersion: 2 -guid: 16173428f7358476fa784f899e396692 -timeCreated: 1459554404 -licenseType: Pro -MonoImporter: - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 16173428f7358476fa784f899e396692 +timeCreated: 1459554404 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab old mode 100755 new mode 100644 similarity index 96% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab index 181f78d..f3c2904 --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab @@ -1,57 +1,57 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &184210 -GameObject: - m_ObjectHideFlags: 0 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 100100000} - serializedVersion: 4 - m_Component: - - 224: {fileID: 22414968} - - 114: {fileID: 11464956} - m_Layer: 0 - m_Name: UnityMainThreadDispatcher - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &11464956 -MonoBehaviour: - m_ObjectHideFlags: 1 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 100100000} - m_GameObject: {fileID: 184210} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 16173428f7358476fa784f899e396692, type: 3} - m_Name: - m_EditorClassIdentifier: ---- !u!224 &22414968 -RectTransform: - m_ObjectHideFlags: 1 - m_PrefabParentObject: {fileID: 0} - m_PrefabInternal: {fileID: 100100000} - m_GameObject: {fileID: 184210} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 0, y: 0, z: 0} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 - m_AnchorMin: {x: 0.5, y: 0.5} - m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -50, y: -50} - m_SizeDelta: {x: 100, y: 100} - m_Pivot: {x: 0, y: 0} ---- !u!1001 &100100000 -Prefab: - m_ObjectHideFlags: 1 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 0} - m_Modifications: [] - m_RemovedComponents: [] - m_ParentPrefab: {fileID: 0} - m_RootGameObject: {fileID: 184210} - m_IsPrefabParent: 1 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &184210 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22414968} + - 114: {fileID: 11464956} + m_Layer: 0 + m_Name: UnityMainThreadDispatcher + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11464956 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 184210} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 16173428f7358476fa784f899e396692, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!224 &22414968 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 184210} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -50, y: -50} + m_SizeDelta: {x: 100, y: 100} + m_Pivot: {x: 0, y: 0} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 184210} + m_IsPrefabParent: 1 diff --git a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab.meta b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab.meta rename to unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab.meta index 729f736..4b1ceba --- a/unity_FACSAvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab.meta +++ b/unity_FACSvatar/Assets/Packages/UnityMainThreadDispatcher/UnityMainThreadDispatcher.prefab.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 8a749df5e56f6422ba9fe64d83915a89 -timeCreated: 1459554642 -licenseType: Pro -NativeFormatImporter: - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 8a749df5e56f6422ba9fe64d83915a89 +timeCreated: 1459554642 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Scenes.meta b/unity_FACSvatar/Assets/Scenes.meta old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/Assets/Scenes.meta rename to unity_FACSvatar/Assets/Scenes.meta index 709eb49..17072cf --- a/unity_FACSAvatar/Assets/Scenes.meta +++ b/unity_FACSvatar/Assets/Scenes.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 4f704ae4b4f98ae41a0bce26658850c1 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 4f704ae4b4f98ae41a0bce26658850c1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSvatar/Assets/Scenes/basic_dnn.unity b/unity_FACSvatar/Assets/Scenes/basic_dnn.unity new file mode 100644 index 0000000..ecf497d --- /dev/null +++ b/unity_FACSvatar/Assets/Scenes/basic_dnn.unity @@ -0,0 +1,4725 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.08 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 4 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 112000002, guid: 1720e5c6546a7ea42a7f3520c6dae397, + type: 2} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &6011625 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100070, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 6011626} + - component: {fileID: 6011627} + m_Layer: 0 + m_Name: Lamp_back_up + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6011626 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400070, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 6011625} + m_LocalRotation: {x: 0.2540053, y: -0.27761522, z: -0.07354703, w: 0.92358106} + m_LocalPosition: {x: 0.8480722, y: 2.0168936, z: -0.89287007} + m_LocalScale: {x: 10.000004, y: 10.000005, z: 10.000004} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!108 &6011627 +Light: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 10800004, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 6011625} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.19999999 + m_Range: 10 + m_SpotAngle: 75 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &9430172 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100136, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 9430173} + m_Layer: 0 + m_Name: ring01_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &9430173 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400136, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 9430172} + m_LocalRotation: {x: -0.19228166, y: 0.026138613, z: 0.016373193, w: 0.980855} + m_LocalPosition: {x: -1.8626451e-11, y: 0.0005220261, z: 8.731149e-10} + m_LocalScale: {x: 0.9999999, y: 1, z: 1.0000001} + m_Children: + - {fileID: 1590733145} + m_Father: {fileID: 817479173} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &30697412 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100088, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 30697413} + m_Layer: 0 + m_Name: middle00_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &30697413 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400088, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 30697412} + m_LocalRotation: {x: -0.062049847, y: 0.9924421, z: -0.08408957, w: 0.06432413} + m_LocalPosition: {x: 0.0001507717, y: 0.0003181321, z: 0.000050044757} + m_LocalScale: {x: 0.9999999, y: 1, z: 0.99999994} + m_Children: + - {fileID: 2147123574} + m_Father: {fileID: 978674435} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &36784384 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100180, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 36784385} + m_Layer: 0 + m_Name: thumb03_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &36784385 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400180, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 36784384} + m_LocalRotation: {x: -0.23648389, y: -0.015269359, z: 0.011681372, w: 0.9714452} + m_LocalPosition: {x: -2.0954757e-10, y: 0.0003748123, z: -0.0000000010430813} + m_LocalScale: {x: 1, y: 1, z: 0.9999999} + m_Children: + - {fileID: 2049681594} + m_Father: {fileID: 496519299} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &40511226 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100158, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 40511227} + m_Layer: 0 + m_Name: spine03 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &40511227 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400158, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 40511226} + m_LocalRotation: {x: 0.14094958, y: -0.000000057027037, z: 0.000000030264296, w: 0.9900168} + m_LocalPosition: {x: 9.7699626e-17, y: 0.0014675508, z: 1.110223e-18} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1277336257} + - {fileID: 1923935765} + - {fileID: 330701566} + - {fileID: 294237236} + - {fileID: 367015553} + m_Father: {fileID: 318664427} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &47072950 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100096, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 47072951} + m_Layer: 0 + m_Name: middle02_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &47072951 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400096, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 47072950} + m_LocalRotation: {x: 0.085140884, y: -0.0279638, z: -0.0067958958, w: 0.99595326} + m_LocalPosition: {x: 9.3132255e-12, y: 0.00042827084, z: -5.1921234e-10} + m_LocalScale: {x: 0.9999999, y: 1, z: 0.99999994} + m_Children: + - {fileID: 2107303582} + m_Father: {fileID: 2147123574} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &67386805 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1585375456} + m_Modifications: + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.y + value: -0.014375 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.z + value: 0.000278 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.x + value: -0.031864323 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.y + value: -0.000000037837342 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000005256793 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9994922 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.x + value: 0.010101022 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.y + value: 0.009999976 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.z + value: 0.010000011 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6b3959e51442c9a42a10fe861d8900b5, type: 2} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + m_IsPrefabParent: 0 +--- !u!1 &117120841 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100112, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 117120842} + m_Layer: 0 + m_Name: pinky00_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &117120842 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400112, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 117120841} + m_LocalRotation: {x: -0.05796604, y: 0.99797535, z: 0.00212739, w: 0.02608872} + m_LocalPosition: {x: -0.00024190848, y: 0.00029181296, z: 0.000031848056} + m_LocalScale: {x: 1.0000001, y: 0.99999994, z: 1.0000001} + m_Children: + - {fileID: 1820167813} + m_Father: {fileID: 978674435} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &154975693 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100204, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 154975694} + m_Layer: 0 + m_Name: upperarm_twist_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &154975694 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400204, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 154975693} + m_LocalRotation: {x: 0.06829752, y: 0.004093, z: 0.01568879, w: 0.99753326} + m_LocalPosition: {x: -0.0000000013166572, y: -5.512265e-10, z: -5.47152e-11} + m_LocalScale: {x: 0.99999994, y: 0.9999999, z: 1.0000001} + m_Children: + - {fileID: 406578344} + m_Father: {fileID: 2011829730} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &170901913 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 170901914} + - component: {fileID: 170901918} + - component: {fileID: 170901917} + - component: {fileID: 170901916} + - component: {fileID: 170901915} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &170901914 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170901913} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 1.496, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 212278222} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &170901915 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170901913} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 170901914} + volumeLayer: + serializedVersion: 2 + m_Bits: 256 + stopNaNPropagation: 1 + antialiasingMode: 0 + temporalAntialiasing: + jitterSpread: 0.75 + sharpness: 0.25 + stationaryBlending: 0.95 + motionBlending: 0.85 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 0 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 0 + m_ShowCustomSorter: 0 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!81 &170901916 +AudioListener: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170901913} + m_Enabled: 0 +--- !u!124 &170901917 +Behaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170901913} + m_Enabled: 1 +--- !u!20 &170901918 +Camera: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170901913} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 28 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 1 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!1 &185401754 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100094, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 185401755} + m_Layer: 0 + m_Name: middle01_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &185401755 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400094, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 185401754} + m_LocalRotation: {x: -0.2577148, y: -0.08635256, z: -0.028559688, w: 0.9619307} + m_LocalPosition: {x: 1.11758706e-10, y: 0.00058493175, z: 0.0000000025751068} + m_LocalScale: {x: 1, y: 1, z: 0.99999994} + m_Children: + - {fileID: 384665253} + m_Father: {fileID: 1833049997} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &212278220 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 81 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalPosition.x + value: 1.781 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalPosition.y + value: -0.154 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalPosition.z + value: -0.082 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Name + value: asian_male_clothes + objectReference: {fileID: 0} + - target: {fileID: 13700010, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: ed3249d017e7c5344ad54a8ab1313155, type: 2} + - target: {fileID: 13700008, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: a034aee75fdb44a46abf3bfd5cc996ca, type: 2} + - target: {fileID: 13700006, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 608282cb54bb900468b4f468ec02a5c2, type: 2} + - target: {fileID: 13700014, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: aea616e4477218740bd5ca1855af27a5, type: 2} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: 8ee11c4d6498a6b4db1f72d0ea12c242, type: 2} + - target: {fileID: 13700012, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 65bdace0ca2980e419b16f8dfc9e13bd, type: 2} + - target: {fileID: 13700012, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: edd5d2c1ab8c5454babf1e21fa3d8df7, type: 2} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 1175f9778e3b71c49bb78199771d78c5, type: 2} + - target: {fileID: 13700002, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 56577e872ded4ca479c15746c14db911, type: 2} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[5] + value: + objectReference: {fileID: 2100000, guid: 7ad0c1e9b0ffffa40a3700c3a6e30289, type: 2} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[3] + value: + objectReference: {fileID: 2100000, guid: 74da095084769d14fb8dfa00744c837d, type: 2} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[2] + value: + objectReference: {fileID: 2100000, guid: fa06b46b3af2f764fa820c001a218642, type: 2} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[4] + value: + objectReference: {fileID: 2100000, guid: f6de4e1a31e573542b410cffe1559388, type: 2} + - target: {fileID: 13700004, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 1581d3f0f172fae498b5ffa28119bf10, type: 2} + - target: {fileID: 400004, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400036, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400160, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400072, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400170, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 400074, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400166, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 400162, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400168, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400068, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400164, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 400042, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[35] + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_Materials.Array.data[6] + value: + objectReference: {fileID: 2100000, guid: 8065a6d91f06dbf489b883a0b3466d06, type: 2} + - target: {fileID: 400044, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_IsPrefabParent: 0 +--- !u!1 &212278221 stripped +GameObject: + m_PrefabParentObject: {fileID: 100000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_PrefabInternal: {fileID: 212278220} +--- !u!4 &212278222 stripped +Transform: + m_PrefabParentObject: {fileID: 400000, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_PrefabInternal: {fileID: 212278220} +--- !u!114 &212278223 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 212278221} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8ac5d8ba9ba9ae243a196721bde9e88c, type: 3} + m_Name: + m_EditorClassIdentifier: + headCam: 0 +--- !u!1 &224392147 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100118, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 224392148} + m_Layer: 0 + m_Name: pinky01_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &224392148 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400118, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 224392147} + m_LocalRotation: {x: -0.12972923, y: -0.06713418, z: -0.0016735217, w: 0.9892727} + m_LocalPosition: {x: 9.3132255e-12, y: 0.0004732576, z: -5.465699e-10} + m_LocalScale: {x: 1, y: 1, z: 0.99999994} + m_Children: + - {fileID: 1633834480} + m_Father: {fileID: 1746729584} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &258731757 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100160, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 258731758} + m_Layer: 0 + m_Name: thigh_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &258731758 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400160, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 258731757} + m_LocalRotation: {x: 0.0025583396, y: -0.120034955, z: 0.99256027, w: 0.02022883} + m_LocalPosition: {x: -0.0013241993, y: 0.0009865693, z: 0.00009205728} + m_LocalScale: {x: 1, y: 1, z: 0.99999887} + m_Children: + - {fileID: 1490696667} + - {fileID: 829615616} + m_Father: {fileID: 664667404} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &263439521 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100044, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 263439522} + m_Layer: 0 + m_Name: head_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &263439522 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400044, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 263439521} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0017391859, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 367015552} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &271749108 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100142, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 271749109} + m_Layer: 0 + m_Name: ring02_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &271749109 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400142, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 271749108} + m_LocalRotation: {x: 0.063292004, y: 0.010185025, z: -0.022970054, w: 0.99767876} + m_LocalPosition: {x: -1.2107193e-10, y: 0.00041927162, z: -9.487848e-10} + m_LocalScale: {x: 1, y: 1, z: 0.99999994} + m_Children: + - {fileID: 1652631837} + m_Father: {fileID: 527613984} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &281326934 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100124, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 281326935} + m_Layer: 0 + m_Name: pinky03_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &281326935 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400124, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 281326934} + m_LocalRotation: {x: -0.12549253, y: 0.00967085, z: 0.016722254, w: 0.9919065} + m_LocalPosition: {x: 3.7252902e-11, y: 0.00019702758, z: -4.9752996e-10} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_Children: + - {fileID: 560554163} + m_Father: {fileID: 340732780} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &289393657 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100150, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 289393658} + m_Layer: 0 + m_Name: ring03_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &289393658 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400150, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 289393657} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00023341768, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1652631837} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &294237235 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100024, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 294237236} + m_Layer: 0 + m_Name: clavicle_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &294237236 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400024, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 294237235} + m_LocalRotation: {x: -0.034530263, y: -0.06340595, z: -0.8036528, w: 0.59070253} + m_LocalPosition: {x: 0.0003608243, y: 0.0020035983, z: 0.00043831734} + m_LocalScale: {x: 0.99999976, y: 0.9999999, z: 0.99999994} + m_Children: + - {fileID: 2011829730} + m_Father: {fileID: 40511227} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &294826918 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100082, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 294826919} + m_Layer: 0 + m_Name: lowerarm_twist_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &294826919 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400082, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 294826918} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0014098933, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1306965388} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &314114508 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100002, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 314114509} + m_Layer: 0 + m_Name: breast_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &314114509 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400002, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 314114508} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.002180365, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1277336257} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &318664426 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100156, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 318664427} + m_Layer: 0 + m_Name: spine02 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &318664427 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400156, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 318664426} + m_LocalRotation: {x: -0.18390918, y: 0.0005751647, z: 0.000107523294, w: 0.98294306} + m_LocalPosition: {x: 1.00048855e-13, y: 0.00085404207, z: 1.8692525e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 40511227} + m_Father: {fileID: 1094631813} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &328778146 stripped +Transform: + m_PrefabParentObject: {fileID: 400042, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_PrefabInternal: {fileID: 212278220} +--- !u!1 &330701565 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100022, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 330701566} + m_Layer: 0 + m_Name: clavicle_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &330701566 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400022, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 330701565} + m_LocalRotation: {x: -0.034534015, y: 0.06340837, z: 0.803654, w: 0.5907005} + m_LocalPosition: {x: -0.00036082455, y: 0.002003602, z: 0.00043831728} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1831323280} + m_Father: {fileID: 40511227} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &338842090 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100016, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 338842091} + m_Layer: 0 + m_Name: calf_twist_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &338842091 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400016, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 338842090} + m_LocalRotation: {x: -0.020813124, y: -0.0021590441, z: 0.025820356, w: 0.9994476} + m_LocalPosition: {x: 7.1750036e-11, y: -2.150773e-10, z: -3.8417054e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1157550879} + m_Father: {fileID: 743666785} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &340732779 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100120, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 340732780} + m_Layer: 0 + m_Name: pinky02_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &340732780 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400120, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 340732779} + m_LocalRotation: {x: 0.059572443, y: -0.0006311052, z: 0.016563907, w: 0.9980864} + m_LocalPosition: {x: 9.3132255e-12, y: 0.0003442946, z: -6.2427716e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 281326935} + m_Father: {fileID: 1820167813} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &367015552 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400042, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 452613901} + m_LocalRotation: {x: -0.36076614, y: 0.00000014885144, z: 0.000000012476597, w: 0.9326563} + m_LocalPosition: {x: 1.9539925e-16, y: 0.0010639696, z: 4.842877e-10} + m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001} + m_Children: + - {fileID: 263439522} + m_Father: {fileID: 367015553} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &367015553 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400108, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1075286783} + m_LocalRotation: {x: 0.38295048, y: -0.00000015170137, z: -0.0000000011642333, w: 0.9237689} + m_LocalPosition: {x: -1.2309359e-10, y: 0.0024559514, z: 0.00061648374} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 367015552} + m_Father: {fileID: 40511227} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &367015554 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100028, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 367015558} + - component: {fileID: 367015559} + - component: {fileID: 367015556} + m_Layer: 0 + m_Name: FACSvatar_body + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &367015555 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100026, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 367015560} + - component: {fileID: 367015557} + m_Layer: 0 + m_Name: FACSvatar_armature + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &367015556 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 367015554} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1baff5d3dbe38494ab39e74a00972710, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &367015557 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 367015555} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30ab04940eec0c14985cb224f8d903cb, type: 3} + m_Name: + m_EditorClassIdentifier: + jointObj_head: {fileID: 367015552} + jointObj_neck: {fileID: 367015553} + headRotCorrection: -42.295 + neckRotCorrection: 45.033 +--- !u!4 &367015558 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400028, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 367015554} + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 100, y: 100, z: 100} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!137 &367015559 +SkinnedMeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 13700000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 367015554} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 2100000, guid: 72dfb612adf3d2e438f7f760cdd5cef6, type: 2} + - {fileID: 2100000, guid: 4618ebb0dc699ea499e0a6e37e1ef5d4, type: 2} + - {fileID: 2100000, guid: ae28f6eabefd3d74697459a8cec7218b, type: 2} + - {fileID: 2100000, guid: f6de4e1a31e573542b410cffe1559388, type: 2} + - {fileID: 2100000, guid: fa293091f1a7042499f677a543a46614, type: 2} + - {fileID: 2100000, guid: 7ad0c1e9b0ffffa40a3700c3a6e30289, type: 2} + - {fileID: 2100000, guid: 8065a6d91f06dbf489b883a0b3466d06, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + serializedVersion: 2 + m_Quality: 0 + m_UpdateWhenOffscreen: 0 + m_SkinnedMotionVectors: 1 + m_Mesh: {fileID: 4300000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_Bones: + - {fileID: 1274346180} + - {fileID: 664667404} + - {fileID: 1526798077} + - {fileID: 743666785} + - {fileID: 711511495} + - {fileID: 406621181} + - {fileID: 338842091} + - {fileID: 1306736530} + - {fileID: 258731758} + - {fileID: 1490696667} + - {fileID: 1140131915} + - {fileID: 1091374603} + - {fileID: 1730123108} + - {fileID: 829615616} + - {fileID: 1094631813} + - {fileID: 318664427} + - {fileID: 40511227} + - {fileID: 330701566} + - {fileID: 1831323280} + - {fileID: 849630210} + - {fileID: 978674435} + - {fileID: 488402553} + - {fileID: 496519299} + - {fileID: 36784385} + - {fileID: 2140139897} + - {fileID: 1380560884} + - {fileID: 1879116913} + - {fileID: 1541136216} + - {fileID: 30697413} + - {fileID: 2147123574} + - {fileID: 47072951} + - {fileID: 2107303582} + - {fileID: 817479173} + - {fileID: 9430173} + - {fileID: 1590733145} + - {fileID: 1582892474} + - {fileID: 117120842} + - {fileID: 1820167813} + - {fileID: 340732780} + - {fileID: 281326935} + - {fileID: 1306965388} + - {fileID: 913374613} + - {fileID: 294237236} + - {fileID: 2011829730} + - {fileID: 479374908} + - {fileID: 1386185821} + - {fileID: 1242927638} + - {fileID: 705180516} + - {fileID: 547212232} + - {fileID: 1429649791} + - {fileID: 537215829} + - {fileID: 1564903696} + - {fileID: 1042570881} + - {fileID: 1833049997} + - {fileID: 185401755} + - {fileID: 384665253} + - {fileID: 529981298} + - {fileID: 1895673868} + - {fileID: 527613984} + - {fileID: 271749109} + - {fileID: 1652631837} + - {fileID: 1746729584} + - {fileID: 224392148} + - {fileID: 1633834480} + - {fileID: 380501748} + - {fileID: 1036657516} + - {fileID: 154975694} + - {fileID: 367015553} + - {fileID: 367015552} + - {fileID: 1277336257} + - {fileID: 1923935765} + m_BlendShapeWeights: [] + m_RootBone: {fileID: 1274346180} + m_AABB: + m_Center: {x: 0.0000012412202, y: -0.00068487844, z: -0.008111488} + m_Extent: {x: 0.0077442965, y: 0.0037575816, z: 0.009277593} + m_DirtyAABB: 0 +--- !u!4 &367015560 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400026, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 367015555} + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 100, y: 100, z: 100} + m_Children: + - {fileID: 1274346180} + m_Father: {fileID: 1315970591} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &380501747 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100128, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 380501748} + m_Layer: 0 + m_Name: pinky03_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &380501748 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400128, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 380501747} + m_LocalRotation: {x: -0.12622686, y: -0.0334465, z: -0.0097371815, w: 0.9913896} + m_LocalPosition: {x: 9.3132255e-12, y: 0.00019702654, z: 0.0000000010360963} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_Children: + - {fileID: 2048128682} + m_Father: {fileID: 1633834480} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &384665252 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100098, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 384665253} + m_Layer: 0 + m_Name: middle02_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &384665253 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400098, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 384665252} + m_LocalRotation: {x: 0.08539732, y: -0.03306079, z: 0.001570811, w: 0.9957971} + m_LocalPosition: {x: 2.1420418e-10, y: 0.00042826988, z: -4.6566128e-12} + m_LocalScale: {x: 0.9999999, y: 0.99999994, z: 0.9999999} + m_Children: + - {fileID: 529981298} + m_Father: {fileID: 185401755} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &406578343 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100206, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 406578344} + m_Layer: 0 + m_Name: upperarm_twist_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &406578344 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400206, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 406578343} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0012463066, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 154975694} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &406621180 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100192, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 406621181} + m_Layer: 0 + m_Name: toes_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &406621181 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400192, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 406621180} + m_LocalRotation: {x: -0.040860124, y: 0.97849274, z: 0.20088154, w: -0.022999749} + m_LocalPosition: {x: -2.2213498e-10, y: 0.0016454211, z: -5.5879353e-11} + m_LocalScale: {x: 1, y: 1.0000001, z: 1} + m_Children: + - {fileID: 1287090757} + m_Father: {fileID: 711511495} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &452613901 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100042, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 367015552} + m_Layer: 0 + m_Name: head + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &459259585 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100106, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 459259586} + m_Layer: 0 + m_Name: middle03_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &459259586 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400106, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 459259585} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00025439291, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 529981298} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &460531640 stripped +GameObject: + m_PrefabParentObject: {fileID: 100002, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_PrefabInternal: {fileID: 212278220} +--- !u!114 &460531642 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 460531640} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30ab04940eec0c14985cb224f8d903cb, type: 3} + m_Name: + m_EditorClassIdentifier: + jointObj_head: {fileID: 328778146} + jointObj_neck: {fileID: 853784022} + headRotCorrection: -22.983 + neckRotCorrection: 6.387 +--- !u!1 &479374907 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100078, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 479374908} + m_Layer: 0 + m_Name: lowerarm_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &479374908 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400078, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 479374907} + m_LocalRotation: {x: 0.101865254, y: 0.029682787, z: 0.06699828, w: 0.9920956} + m_LocalPosition: {x: -7.834751e-10, y: 0.002583426, z: -3.1432135e-11} + m_LocalScale: {x: 0.9999999, y: 1, z: 1} + m_Children: + - {fileID: 1386185821} + - {fileID: 1036657516} + m_Father: {fileID: 2011829730} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &488402552 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100172, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 488402553} + m_Layer: 0 + m_Name: thumb01_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &488402553 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400172, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 488402552} + m_LocalRotation: {x: 0.57141167, y: 0.64992404, z: -0.07011932, w: 0.49615595} + m_LocalPosition: {x: 0.00024582457, y: 0.0002643248, z: 0.000053299824} + m_LocalScale: {x: 1.0000001, y: 1.0000001, z: 1} + m_Children: + - {fileID: 496519299} + m_Father: {fileID: 978674435} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &496511156 stripped +GameObject: + m_PrefabParentObject: {fileID: 100004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!114 &496511159 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 496511156} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1baff5d3dbe38494ab39e74a00972710, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &496519298 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100176, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 496519299} + m_Layer: 0 + m_Name: thumb02_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &496519299 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400176, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 496519298} + m_LocalRotation: {x: 0.0047234884, y: -0.013407821, z: -0.17200562, w: 0.9849934} + m_LocalPosition: {x: 1.4901161e-10, y: 0.00034407046, z: 0.0000000013038516} + m_LocalScale: {x: 1, y: 1, z: 1.0000001} + m_Children: + - {fileID: 36784385} + m_Father: {fileID: 488402553} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &527613983 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100138, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 527613984} + m_Layer: 0 + m_Name: ring01_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &527613984 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400138, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 527613983} + m_LocalRotation: {x: -0.19267637, y: -0.054634098, z: -0.010777985, w: 0.97968096} + m_LocalPosition: {x: -7.4505804e-11, y: 0.000522027, z: -6.9034284e-10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 271749109} + m_Father: {fileID: 1895673868} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &529981297 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100104, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 529981298} + m_Layer: 0 + m_Name: middle03_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &529981298 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400104, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 529981297} + m_LocalRotation: {x: -0.08454281, y: 0.07469399, z: 0.01778058, w: 0.9934572} + m_LocalPosition: {x: 3.7252902e-11, y: 0.0002908236, z: -0.0000000023283064} + m_LocalScale: {x: 1.0000001, y: 1, z: 1} + m_Children: + - {fileID: 459259586} + m_Father: {fileID: 384665253} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &537215828 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100052, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 537215829} + m_Layer: 0 + m_Name: index01_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &537215829 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400052, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 537215828} + m_LocalRotation: {x: -0.2872288, y: -0.10327544, z: 0.030834084, w: 0.9517789} + m_LocalPosition: {x: -7.4505804e-11, y: 0.0006084403, z: -0.000000001238659} + m_LocalScale: {x: 0.99999994, y: 1, z: 1} + m_Children: + - {fileID: 1564903696} + m_Father: {fileID: 1429649791} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &547212231 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100184, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 547212232} + m_Layer: 0 + m_Name: thumb03_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &547212232 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400184, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 547212231} + m_LocalRotation: {x: -0.23648399, y: 0.015269319, z: -0.011681328, w: 0.9714452} + m_LocalPosition: {x: -5.913898e-10, y: 0.0003748121, z: -7.45058e-10} + m_LocalScale: {x: 0.99999994, y: 1.0000001, z: 0.99999994} + m_Children: + - {fileID: 1241136391} + m_Father: {fileID: 705180516} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &560554162 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100126, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 560554163} + m_Layer: 0 + m_Name: pinky03_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &560554163 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400126, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 560554162} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.000166156, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 281326935} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &643502439 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100102, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 643502440} + m_Layer: 0 + m_Name: middle03_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &643502440 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400102, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 643502439} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00025439291, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2107303582} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &649553675 stripped +GameObject: + m_PrefabParentObject: {fileID: 100004, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_PrefabInternal: {fileID: 212278220} +--- !u!114 &649553678 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 649553675} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1baff5d3dbe38494ab39e74a00972710, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &650107988 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100170, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 650107989} + m_Layer: 0 + m_Name: thigh_twist_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &650107989 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400170, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 650107988} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0016568896, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1306736530} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &664667403 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100110, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 664667404} + m_Layer: 0 + m_Name: pelvis + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &664667404 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400110, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 664667403} + m_LocalRotation: {x: -0.83727574, y: -0.00016997225, z: 0.0002614933, w: 0.5467809} + m_LocalPosition: {x: -0.000000011695872, y: -0.00076323655, z: -0.008038327} + m_LocalScale: {x: 1, y: 1, z: 0.9999998} + m_Children: + - {fileID: 1094631813} + - {fileID: 258731758} + - {fileID: 1526798077} + m_Father: {fileID: 1274346180} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &705180515 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100178, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 705180516} + m_Layer: 0 + m_Name: thumb02_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &705180516 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400178, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 705180515} + m_LocalRotation: {x: 0.0047235815, y: 0.013407573, z: 0.1720057, w: 0.9849934} + m_LocalPosition: {x: -4.4703483e-10, y: 0.00034406895, z: -7.8231094e-10} + m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001} + m_Children: + - {fileID: 547212232} + m_Father: {fileID: 1242927638} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &711511494 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100034, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 711511495} + m_Layer: 0 + m_Name: foot_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &711511495 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400034, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 711511494} + m_LocalRotation: {x: 0.53081185, y: -0.052108627, z: -0.023805106, w: 0.84555125} + m_LocalPosition: {x: -1.12413544e-10, y: 0.0042323903, z: 2.7939677e-11} + m_LocalScale: {x: 1.0000001, y: 1.0000001, z: 1} + m_Children: + - {fileID: 406621181} + m_Father: {fileID: 743666785} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &735102829 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100060, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 735102830} + m_Layer: 0 + m_Name: index03_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &735102830 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400060, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 735102829} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00022456291, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1541136216} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &743666784 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100010, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 743666785} + m_Layer: 0 + m_Name: calf_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &743666785 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400010, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 743666784} + m_LocalRotation: {x: -0.028472187, y: -0.0017533771, z: 0.024324747, w: 0.9992971} + m_LocalPosition: {x: 7.2566876e-11, y: 0.0043537593, z: -4.7293723e-13} + m_LocalScale: {x: 0.9999999, y: 0.9999998, z: 0.9999999} + m_Children: + - {fileID: 338842091} + - {fileID: 711511495} + m_Father: {fileID: 1526798077} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &805148144 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100006, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 805148145} + m_Layer: 0 + m_Name: breast_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &805148145 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400006, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 805148144} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0021803647, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1923935765} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &817479172 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100132, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 817479173} + m_Layer: 0 + m_Name: ring00_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &817479173 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400132, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 817479172} + m_LocalRotation: {x: -0.07111273, y: 0.99573356, z: -0.049111325, w: 0.032338765} + m_LocalPosition: {x: -0.0000402127, y: 0.0003171527, z: 0.000021997988} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 9430173} + m_Father: {fileID: 978674435} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &819416404 stripped +Transform: + m_PrefabParentObject: {fileID: 400104, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!1 &829615615 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100164, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 829615616} + m_Layer: 0 + m_Name: thigh_twist_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &829615616 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400164, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 829615615} + m_LocalRotation: {x: 0.070451856, y: -0.0017108447, z: 0.01035208, w: 0.99746} + m_LocalPosition: {x: -2.5482472e-10, y: 0.0000000019819075, z: 2.0881998e-10} + m_LocalScale: {x: 0.99999994, y: 0.9999999, z: 1} + m_Children: + - {fileID: 1660701357} + m_Father: {fileID: 258731758} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &849630209 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100076, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 849630210} + m_Layer: 0 + m_Name: lowerarm_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &849630210 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400076, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 849630209} + m_LocalRotation: {x: 0.10237004, y: -0.031422373, z: -0.06622438, w: 0.99204206} + m_LocalPosition: {x: 7.7765433e-10, y: 0.0025834262, z: 1.8626451e-11} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_Children: + - {fileID: 978674435} + - {fileID: 1306965388} + m_Father: {fileID: 1831323280} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &853784022 stripped +Transform: + m_PrefabParentObject: {fileID: 400108, guid: a092a65c3abea8f43ac82aa8546d9cee, type: 3} + m_PrefabInternal: {fileID: 212278220} +--- !u!1 &856537442 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100072, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 856537443} + - component: {fileID: 856537444} + m_Layer: 0 + m_Name: Lamp_left + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &856537443 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400072, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 856537442} + m_LocalRotation: {x: -0.03165932, y: 0.887374, z: -0.25198525, w: 0.38479668} + m_LocalPosition: {x: -0.7705921, y: 1.9963479, z: 0.68954533} + m_LocalScale: {x: 10.000004, y: 10.000005, z: 10.000003} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!108 &856537444 +Light: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 10800006, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 856537442} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.19999999 + m_Range: 10 + m_SpotAngle: 75 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &857760965 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100146, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 857760966} + m_Layer: 0 + m_Name: ring03_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &857760966 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400146, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 857760965} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00023341768, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1582892474} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &913374612 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100200, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 913374613} + m_Layer: 0 + m_Name: upperarm_twist_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &913374613 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400200, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 913374612} + m_LocalRotation: {x: 0.06847784, y: -0.008764914, z: -0.015512453, w: 0.99749357} + m_LocalPosition: {x: -5.878974e-11, y: 3.754394e-11, z: 1.3969838e-11} + m_LocalScale: {x: 0.99999994, y: 0.9999999, z: 0.9999999} + m_Children: + - {fileID: 1058697019} + m_Father: {fileID: 1831323280} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &923768513 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 13700002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700006, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700008, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 81 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalPosition.x + value: 1.395 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalPosition.y + value: -0.15499997 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalPosition.z + value: -0.028 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.y + value: 0.15097257 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98853797 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[3] + value: + objectReference: {fileID: 2100000, guid: 8ee11c4d6498a6b4db1f72d0ea12c242, type: 2} + - target: {fileID: 13700004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 536ca2e8e61f7924baced966cfef509f, type: 2} + - target: {fileID: 13700006, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 9432c1c56aea4cf4bb6e69a84cdf18fe, type: 2} + - target: {fileID: 13700008, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 141e9d5191c035746991d742dcd36986, type: 2} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 65bdace0ca2980e419b16f8dfc9e13bd, type: 2} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: edd5d2c1ab8c5454babf1e21fa3d8df7, type: 2} + - target: {fileID: 13700002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700006, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700008, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[4] + value: + objectReference: {fileID: 2100000, guid: fb9237c6fbf2cb747b873d214c778c56, type: 2} + - target: {fileID: 13700002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5d798df15dcfa544d925d46082b7c613, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: 39a2492e48b142042b0849b07b96f9f0, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[5] + value: + objectReference: {fileID: 2100000, guid: a7ef8281df6cbfe45951ebb0f0f956d4, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 0db37ee0cd7266a4b98557918cab22dd, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[2] + value: + objectReference: {fileID: 2100000, guid: a7ef8281df6cbfe45951ebb0f0f956d4, type: 2} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 17.367 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400158, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400160, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400034, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400068, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400156, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400162, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400066, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 400042, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[60] + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[59] + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[6] + value: + objectReference: {fileID: 2100000, guid: 60d641504a783014fb734260fb2e24ee, type: 2} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_IsPrefabParent: 0 +--- !u!4 &923768514 stripped +Transform: + m_PrefabParentObject: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!1 &978674434 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100038, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 978674435} + m_Layer: 0 + m_Name: hand_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &978674435 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400038, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 978674434} + m_LocalRotation: {x: 0.037944257, y: -0.68725866, z: 0.059856277, w: 0.72294754} + m_LocalPosition: {x: -9.400537e-10, y: 0.0027788873, z: -3.7252902e-11} + m_LocalScale: {x: 0.99999994, y: 0.99999994, z: 1} + m_Children: + - {fileID: 2140139897} + - {fileID: 30697413} + - {fileID: 117120842} + - {fileID: 817479173} + - {fileID: 488402553} + m_Father: {fileID: 849630210} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1036657515 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100084, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1036657516} + m_Layer: 0 + m_Name: lowerarm_twist_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1036657516 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400084, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1036657515} + m_LocalRotation: {x: 0.08603055, y: 0.0006370717, z: 0.00837942, w: 0.99625707} + m_LocalPosition: {x: -4.656613e-10, y: -2.0954757e-11, z: -3.7252902e-11} + m_LocalScale: {x: 0.99999994, y: 0.99999994, z: 0.9999998} + m_Children: + - {fileID: 1094111705} + m_Father: {fileID: 479374908} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1042570880 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100062, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1042570881} + m_Layer: 0 + m_Name: index03_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1042570881 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400062, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1042570880} + m_LocalRotation: {x: -0.11793419, y: -0.054433722, z: 0.02761208, w: 0.9911438} + m_LocalPosition: {x: -0, y: 0.00024716248, z: -6.193295e-10} + m_LocalScale: {x: 1, y: 1, z: 0.99999994} + m_Children: + - {fileID: 1141258243} + m_Father: {fileID: 1564903696} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1058697018 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100202, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1058697019} + m_Layer: 0 + m_Name: upperarm_twist_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1058697019 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400202, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1058697018} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0012467058, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 913374613} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1075286783 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100108, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 367015553} + m_Layer: 0 + m_Name: neck + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &1091374602 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100188, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1091374603} + m_Layer: 0 + m_Name: toes_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1091374603 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400188, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1091374602} + m_LocalRotation: {x: 0.19998753, y: -0.043366265, z: -0.04503421, w: 0.9778018} + m_LocalPosition: {x: 6.373739e-11, y: 0.0016454173, z: -7.4505804e-11} + m_LocalScale: {x: 0.99999994, y: 1.0000001, z: 1.0000001} + m_Children: + - {fileID: 1731598855} + m_Father: {fileID: 1140131915} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1094111704 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100086, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1094111705} + m_Layer: 0 + m_Name: lowerarm_twist_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1094111705 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400086, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1094111704} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.001409893, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1036657516} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1094631812 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100154, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1094631813} + m_Layer: 0 + m_Name: spine01 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1094631813 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400154, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1094631812} + m_LocalRotation: {x: 0.16094252, y: -0.0002698999, z: -0.0001442754, w: 0.98696375} + m_LocalPosition: {x: -2.1685708e-13, y: 0.002061989, z: 7.451097e-11} + m_LocalScale: {x: 1, y: 0.99999994, z: 0.99999994} + m_Children: + - {fileID: 318664427} + m_Father: {fileID: 664667404} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1140131914 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100032, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1140131915} + m_Layer: 0 + m_Name: foot_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1140131915 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400032, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1140131914} + m_LocalRotation: {x: 0.5308116, y: 0.052109454, z: 0.023804322, w: 0.8455513} + m_LocalPosition: {x: 1.2259988e-11, y: 0.0042323894, z: -3.7252902e-11} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1091374603} + m_Father: {fileID: 1490696667} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1141258242 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100064, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1141258243} + m_Layer: 0 + m_Name: index03_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1141258243 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400064, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1141258242} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00022456291, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1042570881} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1157550878 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100018, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1157550879} + m_Layer: 0 + m_Name: calf_twist_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1157550879 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400018, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1157550878} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0014215162, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 338842091} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1241136390 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100186, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1241136391} + m_Layer: 0 + m_Name: thumb03_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1241136391 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400186, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1241136390} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00032678613, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 547212232} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1242927637 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100174, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1242927638} + m_Layer: 0 + m_Name: thumb01_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1242927638 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400174, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1242927637} + m_LocalRotation: {x: -0.5714117, y: 0.6499239, z: -0.070119366, w: -0.4961561} + m_LocalPosition: {x: -0.00024582472, y: 0.00026432474, z: 0.000053301326} + m_LocalScale: {x: 1.0000001, y: 1.0000001, z: 1} + m_Children: + - {fileID: 705180516} + m_Father: {fileID: 1386185821} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1274346179 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100152, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1274346180} + m_Layer: 0 + m_Name: root + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1274346180 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400152, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1274346179} + m_LocalRotation: {x: 0.99606645, y: 0.0000000807745, z: -0.0000007277415, w: -0.08860976} + m_LocalPosition: {x: -4.8428775e-11, y: 0.0005262045, z: 0.0005521011} + m_LocalScale: {x: 1, y: 0.99999994, z: 0.9999985} + m_Children: + - {fileID: 664667404} + m_Father: {fileID: 367015560} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1277336256 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1277336257} + m_Layer: 0 + m_Name: breast_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1277336257 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1277336256} + m_LocalRotation: {x: -0.004660557, y: 0.6838136, z: 0.72783345, w: -0.051339656} + m_LocalPosition: {x: -0.0009265327, y: 0.00049103756, z: 0.00020030023} + m_LocalScale: {x: 1, y: 0.9999998, z: 1} + m_Children: + - {fileID: 314114509} + m_Father: {fileID: 40511227} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1279163954 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100074, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1279163955} + - component: {fileID: 1279163956} + m_Layer: 0 + m_Name: Lamp_right + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1279163955 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400074, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1279163954} + m_LocalRotation: {x: 0.23926318, y: -0.81912076, z: 0.043474436, w: 0.51952314} + m_LocalPosition: {x: 0.99937063, y: 1.8101635, z: 0.5645651} + m_LocalScale: {x: 10.000004, y: 10.000004, z: 10.000004} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 7 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!108 &1279163956 +Light: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 10800008, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1279163954} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.19999999 + m_Range: 10 + m_SpotAngle: 75 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &1287090756 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100194, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1287090757} + m_Layer: 0 + m_Name: toes_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1287090757 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400194, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1287090756} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0005257518, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 406621181} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1306736529 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100168, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1306736530} + m_Layer: 0 + m_Name: thigh_twist_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1306736530 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400168, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1306736529} + m_LocalRotation: {x: 0.07045202, y: 0.0017105142, z: -0.010352272, w: 0.99746} + m_LocalPosition: {x: -1.1949897e-10, y: -0.000000001388978, z: -6.0899764e-11} + m_LocalScale: {x: 0.99999994, y: 0.9999999, z: 0.9999999} + m_Children: + - {fileID: 650107989} + m_Father: {fileID: 1526798077} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1306965387 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100080, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1306965388} + m_Layer: 0 + m_Name: lowerarm_twist_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1306965388 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400080, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1306965387} + m_LocalRotation: {x: 0.08605456, y: -0.0035386963, z: -0.008128816, w: 0.996251} + m_LocalPosition: {x: -5.125184e-10, y: 2.2118911e-10, z: -1.4901161e-10} + m_LocalScale: {x: 0.99999994, y: 0.9999998, z: 1} + m_Children: + - {fileID: 294826919} + m_Father: {fileID: 849630210} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1310051337 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100068, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1310051338} + - component: {fileID: 1310051339} + m_Layer: 0 + m_Name: Lamp_back_bottom + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1310051338 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400068, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1310051337} + m_LocalRotation: {x: 0.13369313, y: 0.4369214, z: 0.41015333, w: -0.7893036} + m_LocalPosition: {x: 1.052112, y: 0.20785987, z: -0.7570565} + m_LocalScale: {x: 10.000004, y: 10.000005, z: 10.000004} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!108 &1310051339 +Light: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 10800002, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1310051337} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 0.19999999 + m_Range: 10 + m_SpotAngle: 75 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &1315970589 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100030, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1315970591} + - component: {fileID: 1315970590} + m_Layer: 0 + m_Name: FACSvatar_MB-161a_caucasian_male_old + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!95 &1315970590 +Animator: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 9500000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1315970589} + m_Enabled: 1 + m_Avatar: {fileID: 9000000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_Controller: {fileID: 0} + m_CullingMode: 1 + m_UpdateMode: 0 + m_ApplyRootMotion: 1 + m_LinearVelocityBlending: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorControllerStateOnDisable: 0 +--- !u!4 &1315970591 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400030, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1315970589} + m_LocalRotation: {x: -0, y: 0.36686656, z: -0, w: 0.9302736} + m_LocalPosition: {x: 1.077, y: -0.30700004, z: 0.134} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2083747754} + - {fileID: 367015560} + - {fileID: 367015558} + - {fileID: 1902507032} + - {fileID: 1310051338} + - {fileID: 6011626} + - {fileID: 856537443} + - {fileID: 1279163955} + m_Father: {fileID: 0} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 43.045002, z: 0} +--- !u!1 &1343900677 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100014, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1343900678} + m_Layer: 0 + m_Name: calf_twist_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1343900678 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400014, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1343900677} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.001421516, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1730123108} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1370848625 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchoredPosition.x + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchoredPosition.y + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_SizeDelta.x + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_SizeDelta.y + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + m_IsPrefabParent: 0 +--- !u!1 &1380560883 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100050, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1380560884} + m_Layer: 0 + m_Name: index01_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1380560884 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400050, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1380560883} + m_LocalRotation: {x: -0.2872007, y: 0.10413679, z: -0.031093989, w: 0.9516851} + m_LocalPosition: {x: -0, y: 0.0006084398, z: 9.313225e-11} + m_LocalScale: {x: 0.9999999, y: 1.0000001, z: 1} + m_Children: + - {fileID: 1879116913} + m_Father: {fileID: 2140139897} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1386185820 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100040, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1386185821} + m_Layer: 0 + m_Name: hand_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1386185821 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400040, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1386185820} + m_LocalRotation: {x: 0.03811831, y: 0.68515, z: -0.059745457, w: 0.72494614} + m_LocalPosition: {x: 1.7345883e-10, y: 0.0027788873, z: -7.4505804e-11} + m_LocalScale: {x: 0.99999994, y: 1, z: 0.9999999} + m_Children: + - {fileID: 1429649791} + - {fileID: 1833049997} + - {fileID: 1746729584} + - {fileID: 1895673868} + - {fileID: 1242927638} + m_Father: {fileID: 479374908} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1429649790 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100048, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1429649791} + m_Layer: 0 + m_Name: index00_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1429649791 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400048, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1429649790} + m_LocalRotation: {x: -0.0062880535, y: 0.98912895, z: -0.11828437, w: -0.087139316} + m_LocalPosition: {x: -0.0002837296, y: 0.0003223604, z: 0.000105951214} + m_LocalScale: {x: 0.99999994, y: 1, z: 1.0000001} + m_Children: + - {fileID: 537215829} + m_Father: {fileID: 1386185821} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1445247486 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 328778146} + m_Modifications: + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.y + value: -0.013127086 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.z + value: -0.0049657878 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.x + value: 0.16789766 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.y + value: -0.00000018651423 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.z + value: 0.0000000017186823 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98580444 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6b3959e51442c9a42a10fe861d8900b5, type: 2} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.x + value: 0.010101005 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.y + value: 0.009999956 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.z + value: 0.01000002 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 100100000, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + m_IsPrefabParent: 0 +--- !u!1 &1490696666 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100008, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1490696667} + m_Layer: 0 + m_Name: calf_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1490696667 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400008, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1490696666} + m_LocalRotation: {x: -0.028472224, y: 0.0017532982, z: -0.02432472, w: 0.9992971} + m_LocalPosition: {x: -1.3571451e-10, y: 0.004353761, z: 3.4197e-12} + m_LocalScale: {x: 0.99999994, y: 0.99999994, z: 0.99999994} + m_Children: + - {fileID: 1730123108} + - {fileID: 1140131915} + m_Father: {fileID: 258731758} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1526798076 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100162, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1526798077} + m_Layer: 0 + m_Name: thigh_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1526798077 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400162, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1526798076} + m_LocalRotation: {x: -0.0019295153, y: -0.12003499, z: 0.9925632, w: -0.020154277} + m_LocalPosition: {x: 0.0013243128, y: 0.0009865693, z: 0.00009040688} + m_LocalScale: {x: 0.9999998, y: 0.9999998, z: 0.99999595} + m_Children: + - {fileID: 743666785} + - {fileID: 1306736530} + m_Father: {fileID: 664667404} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1538313153 stripped +GameObject: + m_PrefabParentObject: {fileID: 100002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!114 &1538313155 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1538313153} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30ab04940eec0c14985cb224f8d903cb, type: 3} + m_Name: + m_EditorClassIdentifier: + jointObj_head: {fileID: 1585375456} + jointObj_neck: {fileID: 819416404} + headRotCorrection: -23.194 + neckRotCorrection: 28.319 +--- !u!1 &1541136215 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100058, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1541136216} + m_Layer: 0 + m_Name: index03_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1541136216 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400058, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1541136215} + m_LocalRotation: {x: -0.11670751, y: 0.013892926, z: -0.03240749, w: 0.99254024} + m_LocalPosition: {x: 4.6566128e-12, y: 0.00024716184, z: -5.0873494e-10} + m_LocalScale: {x: 1, y: 1.0000001, z: 1} + m_Children: + - {fileID: 735102830} + m_Father: {fileID: 1879116913} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1564903695 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100056, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1564903696} + m_Layer: 0 + m_Name: index02_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1564903696 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400056, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1564903695} + m_LocalRotation: {x: 0.089342095, y: 0.047549866, z: 0.03284195, w: 0.9943231} + m_LocalPosition: {x: 1.3038516e-10, y: 0.00038996866, z: -0.0000000014348188} + m_LocalScale: {x: 0.9999999, y: 0.9999998, z: 0.9999999} + m_Children: + - {fileID: 1042570881} + m_Father: {fileID: 537215829} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1582892473 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100144, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1582892474} + m_Layer: 0 + m_Name: ring03_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1582892474 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400144, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1582892473} + m_LocalRotation: {x: -0.09592888, y: 0.010378043, z: -0.0019516485, w: 0.9953322} + m_LocalPosition: {x: -3.7252902e-11, y: 0.00027687417, z: -5.861511e-10} + m_LocalScale: {x: 0.9999999, y: 0.9999999, z: 1} + m_Children: + - {fileID: 857760966} + m_Father: {fileID: 1590733145} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1585375456 stripped +Transform: + m_PrefabParentObject: {fileID: 400040, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!1 &1590733144 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100140, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1590733145} + m_Layer: 0 + m_Name: ring02_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1590733145 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400140, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1590733144} + m_LocalRotation: {x: 0.06418631, y: 0.0066178823, z: 0.020337712, w: 0.99770874} + m_LocalPosition: {x: -0, y: 0.00041927135, z: -7.622293e-10} + m_LocalScale: {x: 0.99999994, y: 1, z: 0.99999994} + m_Children: + - {fileID: 1582892474} + m_Father: {fileID: 9430173} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1613137827 stripped +GameObject: + m_PrefabParentObject: {fileID: 184210, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + m_PrefabInternal: {fileID: 1370848625} +--- !u!114 &1613137828 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1613137827} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ec98db2bfd206014aa81790061a50bfb, type: 3} + m_Name: + m_EditorClassIdentifier: + sub_to_ip: 127.0.0.1 + sub_to_port: 5572 + participants: 5 + FACSModel0: {fileID: 496511159} + RiggedModel0: {fileID: 1538313155} + FACSModel1: {fileID: 649553678} + RiggedModel1: {fileID: 460531642} + FACSModelDnn: {fileID: 367015556} + RiggedModelDnn: {fileID: 367015557} +--- !u!1 &1633834479 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100122, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1633834480} + m_Layer: 0 + m_Name: pinky02_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1633834480 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400122, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1633834479} + m_LocalRotation: {x: 0.05847131, y: 0.029100977, z: -0.020108573, w: 0.9976622} + m_LocalPosition: {x: -3.1664968e-10, y: 0.0003442955, z: -3.2712705e-10} + m_LocalScale: {x: 1, y: 0.99999994, z: 1} + m_Children: + - {fileID: 380501748} + m_Father: {fileID: 224392148} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1652631836 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100148, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1652631837} + m_Layer: 0 + m_Name: ring03_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1652631837 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400148, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1652631836} + m_LocalRotation: {x: -0.09586996, y: -0.0061542504, z: 0.0038896597, w: 0.9953673} + m_LocalPosition: {x: -0, y: 0.00027687475, z: 7.9278833e-10} + m_LocalScale: {x: 0.9999999, y: 0.9999999, z: 0.99999994} + m_Children: + - {fileID: 289393658} + m_Father: {fileID: 271749109} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1660701356 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100166, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1660701357} + m_Layer: 0 + m_Name: thigh_twist_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1660701357 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400166, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1660701356} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0016568896, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 829615616} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1730123107 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100012, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1730123108} + m_Layer: 0 + m_Name: calf_twist_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1730123108 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400012, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1730123107} + m_LocalRotation: {x: -0.02081318, y: 0.0021590702, z: -0.025820324, w: 0.9994476} + m_LocalPosition: {x: 2.8371687e-11, y: -8.4430213e-10, z: -6.868504e-11} + m_LocalScale: {x: 0.99999994, y: 1, z: 1} + m_Children: + - {fileID: 1343900678} + m_Father: {fileID: 1490696667} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1731598854 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100190, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1731598855} + m_Layer: 0 + m_Name: toes_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1731598855 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400190, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1731598854} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.0005257517, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1091374603} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1746729583 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100114, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1746729584} + m_Layer: 0 + m_Name: pinky00_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1746729584 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400114, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1746729583} + m_LocalRotation: {x: 0.05796632, y: 0.99797535, z: 0.002127605, w: -0.026089305} + m_LocalPosition: {x: 0.0002419084, y: 0.00029181296, z: 0.00003184925} + m_LocalScale: {x: 1.0000001, y: 1, z: 1} + m_Children: + - {fileID: 224392148} + m_Father: {fileID: 1386185821} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1802748333 stripped +GameObject: + m_PrefabParentObject: {fileID: 100000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!114 &1802748334 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1802748333} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8ac5d8ba9ba9ae243a196721bde9e88c, type: 3} + m_Name: + m_EditorClassIdentifier: + headCam: 0 +--- !u!1 &1820167812 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100116, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1820167813} + m_Layer: 0 + m_Name: pinky01_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1820167813 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400116, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1820167812} + m_LocalRotation: {x: -0.1295279, y: 0.023274094, z: 0.007414889, w: 0.9912749} + m_LocalPosition: {x: -0, y: 0.00047325797, z: -2.5087502e-10} + m_LocalScale: {x: 1, y: 0.99999976, z: 0.9999999} + m_Children: + - {fileID: 340732780} + m_Father: {fileID: 117120842} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1831323279 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100196, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1831323280} + m_Layer: 0 + m_Name: upperarm_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1831323280 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400196, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1831323279} + m_LocalRotation: {x: -0.052786153, y: -0.046751592, z: 0.14204599, w: 0.98734534} + m_LocalPosition: {x: 0.0000035546254, y: 0.0014311444, z: 0.000002334488} + m_LocalScale: {x: 1, y: 0.99999994, z: 1.0000001} + m_Children: + - {fileID: 849630210} + - {fileID: 913374613} + m_Father: {fileID: 330701566} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1833049996 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100090, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1833049997} + m_Layer: 0 + m_Name: middle00_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1833049997 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400090, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1833049996} + m_LocalRotation: {x: 0.062050093, y: 0.9924421, z: -0.08408948, w: -0.064324155} + m_LocalPosition: {x: -0.0001507717, y: 0.00031813205, z: 0.000050045965} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 185401755} + m_Father: {fileID: 1386185821} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1879116912 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100054, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1879116913} + m_Layer: 0 + m_Name: index02_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1879116913 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400054, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1879116912} + m_LocalRotation: {x: 0.09063559, y: -0.0077858353, z: -0.029082265, w: 0.995429} + m_LocalPosition: {x: -3.7252902e-11, y: 0.00038996898, z: -0.0000000011530937} + m_LocalScale: {x: 0.99999994, y: 0.99999994, z: 0.99999994} + m_Children: + - {fileID: 1541136216} + m_Father: {fileID: 1380560884} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1882014952 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1882014957} + - component: {fileID: 1882014956} + - component: {fileID: 1882014955} + - component: {fileID: 1882014954} + - component: {fileID: 1882014953} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1882014953 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 1882014957} + volumeLayer: + serializedVersion: 2 + m_Bits: 256 + stopNaNPropagation: 1 + antialiasingMode: 0 + temporalAntialiasing: + jitterSpread: 0.75 + sharpness: 0.25 + stationaryBlending: 0.95 + motionBlending: 0.85 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 0 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 0 + m_ShowCustomSorter: 0 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!81 &1882014954 +AudioListener: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 0 +--- !u!124 &1882014955 +Behaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 1 +--- !u!20 &1882014956 +Camera: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 1 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1882014957 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_LocalRotation: {x: -0, y: 0.9891, z: -0, w: -0.14724566} + m_LocalPosition: {x: 1.64, y: 1.327, z: 0.729} + m_LocalScale: {x: 100, y: 99.99997, z: 99.99997} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 196.935, z: 0} +--- !u!1 &1895673867 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100134, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1895673868} + m_Layer: 0 + m_Name: ring00_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1895673868 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400134, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1895673867} + m_LocalRotation: {x: 0.0711131, y: 0.99573356, z: -0.04911127, w: -0.032338783} + m_LocalPosition: {x: 0.000040212664, y: 0.00031715326, z: 0.000021999487} + m_LocalScale: {x: 1, y: 1.0000001, z: 1} + m_Children: + - {fileID: 527613984} + m_Father: {fileID: 1386185821} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1902507031 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100036, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1902507032} + - component: {fileID: 1902507033} + m_Layer: 0 + m_Name: hair01_human_male + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1902507032 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400036, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1902507031} + m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 100, y: 100, z: 100} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!137 &1902507033 +SkinnedMeshRenderer: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 13700002, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1902507031} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 4294967295 + m_Materials: + - {fileID: 2100000, guid: 4c0f1272a5ba67641a688aaaf3bf22a9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + serializedVersion: 2 + m_Quality: 0 + m_UpdateWhenOffscreen: 0 + m_SkinnedMotionVectors: 1 + m_Mesh: {fileID: 4300002, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_Bones: + - {fileID: 1274346180} + - {fileID: 664667404} + - {fileID: 1526798077} + - {fileID: 743666785} + - {fileID: 711511495} + - {fileID: 406621181} + - {fileID: 338842091} + - {fileID: 1306736530} + - {fileID: 258731758} + - {fileID: 1490696667} + - {fileID: 1140131915} + - {fileID: 1091374603} + - {fileID: 1730123108} + - {fileID: 829615616} + - {fileID: 1094631813} + - {fileID: 318664427} + - {fileID: 40511227} + - {fileID: 330701566} + - {fileID: 1831323280} + - {fileID: 849630210} + - {fileID: 978674435} + - {fileID: 488402553} + - {fileID: 496519299} + - {fileID: 36784385} + - {fileID: 2140139897} + - {fileID: 1380560884} + - {fileID: 1879116913} + - {fileID: 1541136216} + - {fileID: 30697413} + - {fileID: 2147123574} + - {fileID: 47072951} + - {fileID: 2107303582} + - {fileID: 817479173} + - {fileID: 9430173} + - {fileID: 1590733145} + - {fileID: 1582892474} + - {fileID: 117120842} + - {fileID: 1820167813} + - {fileID: 340732780} + - {fileID: 281326935} + - {fileID: 1306965388} + - {fileID: 913374613} + - {fileID: 294237236} + - {fileID: 2011829730} + - {fileID: 479374908} + - {fileID: 1386185821} + - {fileID: 1242927638} + - {fileID: 705180516} + - {fileID: 547212232} + - {fileID: 1429649791} + - {fileID: 537215829} + - {fileID: 1564903696} + - {fileID: 1042570881} + - {fileID: 1833049997} + - {fileID: 185401755} + - {fileID: 384665253} + - {fileID: 529981298} + - {fileID: 1895673868} + - {fileID: 527613984} + - {fileID: 271749109} + - {fileID: 1652631837} + - {fileID: 1746729584} + - {fileID: 224392148} + - {fileID: 1633834480} + - {fileID: 380501748} + - {fileID: 1036657516} + - {fileID: 154975694} + - {fileID: 367015553} + - {fileID: 367015552} + - {fileID: 1277336257} + - {fileID: 1923935765} + m_BlendShapeWeights: [] + m_RootBone: {fileID: 1274346180} + m_AABB: + m_Center: {x: 0.0000045416527, y: -0.0018268016, z: -0.016124561} + m_Extent: {x: 0.00080511696, y: 0.00114137, z: 0.0012535481} + m_DirtyAABB: 0 +--- !u!1 &1923935764 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100004, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1923935765} + m_Layer: 0 + m_Name: breast_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1923935765 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400004, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1923935764} + m_LocalRotation: {x: 0.0046599563, y: 0.6838132, z: 0.7278338, w: 0.05133922} + m_LocalPosition: {x: 0.00092653226, y: 0.00049104, z: 0.00020030042} + m_LocalScale: {x: 0.99999994, y: 1.0000001, z: 1.0000001} + m_Children: + - {fileID: 805148145} + m_Father: {fileID: 40511227} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1986896183 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1986896184} + - component: {fileID: 1986896188} + - component: {fileID: 1986896187} + - component: {fileID: 1986896186} + - component: {fileID: 1986896185} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &1986896184 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_LocalRotation: {x: -0, y: 0.0000005215406, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 1.462, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 923768514} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1986896185 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 1986896184} + volumeLayer: + serializedVersion: 2 + m_Bits: 256 + stopNaNPropagation: 1 + antialiasingMode: 0 + temporalAntialiasing: + jitterSpread: 0.75 + sharpness: 0.25 + stationaryBlending: 0.95 + motionBlending: 0.85 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 0 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 1 + m_ShowCustomSorter: 1 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!81 &1986896186 +AudioListener: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 0 +--- !u!124 &1986896187 +Behaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 1 +--- !u!20 &1986896188 +Camera: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 28 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 1 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!1 &2011829729 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100198, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2011829730} + m_Layer: 0 + m_Name: upperarm_R + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2011829730 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400198, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2011829729} + m_LocalRotation: {x: -0.052122377, y: 0.051353633, z: -0.14229307, w: 0.9871164} + m_LocalPosition: {x: -0.0000035513622, y: 0.0014311449, z: 0.0000023340642} + m_LocalScale: {x: 1, y: 0.9999999, z: 1.0000001} + m_Children: + - {fileID: 479374908} + - {fileID: 154975694} + m_Father: {fileID: 294237236} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2048128681 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100130, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2048128682} + m_Layer: 0 + m_Name: pinky03_R_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2048128682 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400130, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2048128681} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.000166156, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 380501748} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2049681593 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100182, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2049681594} + m_Layer: 0 + m_Name: thumb03_L_end + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2049681594 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400182, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2049681593} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0.00032678613, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 36784385} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2083747753 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100020, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2083747754} + - component: {fileID: 2083747755} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &2083747754 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400020, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2083747753} + m_LocalRotation: {x: 1.256074e-15, y: -1, z: -1.0587913e-22, w: 0.00000005960465} + m_LocalPosition: {x: -0, y: 1.6102302, z: 0.95967954} + m_LocalScale: {x: 100, y: 100, z: 100} + m_Children: [] + m_Father: {fileID: 1315970591} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!20 &2083747755 +Camera: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 2000000, guid: c8cbe2b3318943e46ad6f1e918fbdb95, + type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2083747753} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.099999994 + far clip plane: 100 + field of view: 28.841547 + orthographic: 0 + orthographic size: 0.0025714287 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!1 &2107303581 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100100, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2107303582} + m_Layer: 0 + m_Name: middle03_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2107303582 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400100, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2107303581} + m_LocalRotation: {x: -0.08524016, y: 0.0036620153, z: -0.014062081, w: 0.9962545} + m_LocalPosition: {x: -0, y: 0.0002908238, z: 7.824565e-10} + m_LocalScale: {x: 1, y: 1.0000001, z: 0.9999999} + m_Children: + - {fileID: 643502440} + m_Father: {fileID: 47072951} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2140139896 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100046, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2140139897} + m_Layer: 0 + m_Name: index00_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2140139897 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400046, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2140139896} + m_LocalRotation: {x: 0.0062880935, y: 0.98912895, z: -0.11828439, w: 0.08713894} + m_LocalPosition: {x: 0.00028372955, y: 0.00032236046, z: 0.0001059503} + m_LocalScale: {x: 1, y: 1.0000002, z: 1} + m_Children: + - {fileID: 1380560884} + m_Father: {fileID: 978674435} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2147123573 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 100092, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 2147123574} + m_Layer: 0 + m_Name: middle01_L + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2147123574 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 400092, guid: c8cbe2b3318943e46ad6f1e918fbdb95, type: 3} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 2147123573} + m_LocalRotation: {x: -0.25771472, y: 0.08635241, z: 0.02855968, w: 0.96193075} + m_LocalPosition: {x: -7.4505804e-11, y: 0.0005849318, z: 3.72529e-10} + m_LocalScale: {x: 1, y: 1, z: 0.99999994} + m_Children: + - {fileID: 47072951} + m_Father: {fileID: 30697413} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/unity_FACSAvatar/Assets/Scenes/cafe/LightingData.asset.meta b/unity_FACSvatar/Assets/Scenes/basic_dnn.unity.meta similarity index 52% rename from unity_FACSAvatar/Assets/Scenes/cafe/LightingData.asset.meta rename to unity_FACSvatar/Assets/Scenes/basic_dnn.unity.meta index 56aebe9..56817e4 100644 --- a/unity_FACSAvatar/Assets/Scenes/cafe/LightingData.asset.meta +++ b/unity_FACSvatar/Assets/Scenes/basic_dnn.unity.meta @@ -1,8 +1,7 @@ fileFormatVersion: 2 -guid: 1720e5c6546a7ea42a7f3520c6dae397 -NativeFormatImporter: +guid: aeca078f03a4f48debab4aabf9536260 +DefaultImporter: externalObjects: {} - mainObjectFileID: 25800000 userData: assetBundleName: assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Scenes/cafe.meta b/unity_FACSvatar/Assets/Scenes/cafe.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe.meta rename to unity_FACSvatar/Assets/Scenes/cafe.meta diff --git a/unity_FACSAvatar/Assets/Scenes/cafe.unity b/unity_FACSvatar/Assets/Scenes/cafe.unity similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe.unity rename to unity_FACSvatar/Assets/Scenes/cafe.unity diff --git a/unity_FACSAvatar/Assets/Scenes/cafe.unity.meta b/unity_FACSvatar/Assets/Scenes/cafe.unity.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe.unity.meta rename to unity_FACSvatar/Assets/Scenes/cafe.unity.meta diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_Profiles.meta b/unity_FACSvatar/Assets/Scenes/cafe_Profiles.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_Profiles.meta rename to unity_FACSvatar/Assets/Scenes/cafe_Profiles.meta diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset b/unity_FACSvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset rename to unity_FACSvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset.meta b/unity_FACSvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset.meta rename to unity_FACSvatar/Assets/Scenes/cafe_Profiles/postFX Profile.asset.meta diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_asian_female.unity b/unity_FACSvatar/Assets/Scenes/cafe_asian_female.unity similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_asian_female.unity rename to unity_FACSvatar/Assets/Scenes/cafe_asian_female.unity diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_asian_female.unity.meta b/unity_FACSvatar/Assets/Scenes/cafe_asian_female.unity.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_asian_female.unity.meta rename to unity_FACSvatar/Assets/Scenes/cafe_asian_female.unity.meta diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_asian_male.unity b/unity_FACSvatar/Assets/Scenes/cafe_asian_male.unity similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_asian_male.unity rename to unity_FACSvatar/Assets/Scenes/cafe_asian_male.unity diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_asian_male.unity.meta b/unity_FACSvatar/Assets/Scenes/cafe_asian_male.unity.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_asian_male.unity.meta rename to unity_FACSvatar/Assets/Scenes/cafe_asian_male.unity.meta diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_demo_dnn.unity b/unity_FACSvatar/Assets/Scenes/cafe_demo_dnn.unity similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_demo_dnn.unity rename to unity_FACSvatar/Assets/Scenes/cafe_demo_dnn.unity diff --git a/unity_FACSAvatar/Assets/Scenes/cafe_demo_dnn.unity.meta b/unity_FACSvatar/Assets/Scenes/cafe_demo_dnn.unity.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scenes/cafe_demo_dnn.unity.meta rename to unity_FACSvatar/Assets/Scenes/cafe_demo_dnn.unity.meta diff --git a/unity_FACSvatar/Assets/Scenes/mobile.unity b/unity_FACSvatar/Assets/Scenes/mobile.unity new file mode 100644 index 0000000..e252e69 --- /dev/null +++ b/unity_FACSvatar/Assets/Scenes/mobile.unity @@ -0,0 +1,834 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.08 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.37311953, g: 0.38074014, b: 0.3587274, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 4 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 112000002, guid: 1720e5c6546a7ea42a7f3520c6dae397, + type: 2} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &67386805 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1585375456} + m_Modifications: + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.y + value: -0.014375 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalPosition.z + value: 0.000278 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.x + value: -0.031864323 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.y + value: -0.000000037837342 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000005256793 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9994922 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.x + value: 0.010101022 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.y + value: 0.009999976 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_LocalScale.z + value: 0.010000011 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6b3959e51442c9a42a10fe861d8900b5, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dac2b9a34a26d5d44bcd5db5a8f79014, type: 3} + m_IsPrefabAsset: 0 +--- !u!1 &496511156 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 100004, guid: 76b08a4798e48db45bb47dcd16cf054c, + type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!114 &496511159 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 496511156} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1baff5d3dbe38494ab39e74a00972710, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &819416404 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400104, guid: 76b08a4798e48db45bb47dcd16cf054c, + type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!1001 &923768513 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 13700002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700006, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700008, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.size + value: 81 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalPosition.x + value: 1.395 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalPosition.y + value: -0.15499997 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalPosition.z + value: -0.028 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.y + value: 0.15097257 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98853797 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[3] + value: + objectReference: {fileID: 2100000, guid: 8ee11c4d6498a6b4db1f72d0ea12c242, type: 2} + - target: {fileID: 13700004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 536ca2e8e61f7924baced966cfef509f, type: 2} + - target: {fileID: 13700006, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 9432c1c56aea4cf4bb6e69a84cdf18fe, type: 2} + - target: {fileID: 13700008, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 141e9d5191c035746991d742dcd36986, type: 2} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 65bdace0ca2980e419b16f8dfc9e13bd, type: 2} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: edd5d2c1ab8c5454babf1e21fa3d8df7, type: 2} + - target: {fileID: 13700002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700006, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700008, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700010, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[0] + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[4] + value: + objectReference: {fileID: 2100000, guid: fb9237c6fbf2cb747b873d214c778c56, type: 2} + - target: {fileID: 13700002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5d798df15dcfa544d925d46082b7c613, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[1] + value: + objectReference: {fileID: 2100000, guid: 39a2492e48b142042b0849b07b96f9f0, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[5] + value: + objectReference: {fileID: 2100000, guid: a7ef8281df6cbfe45951ebb0f0f956d4, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 0db37ee0cd7266a4b98557918cab22dd, type: 2} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[2] + value: + objectReference: {fileID: 2100000, guid: a7ef8281df6cbfe45951ebb0f0f956d4, type: 2} + - target: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 17.367 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400002, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400158, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400160, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400034, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400068, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400156, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400162, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400066, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 400042, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[60] + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_BlendShapeWeights.Array.data[59] + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + propertyPath: m_Materials.Array.data[6] + value: + objectReference: {fileID: 2100000, guid: 60d641504a783014fb734260fb2e24ee, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 76b08a4798e48db45bb47dcd16cf054c, type: 3} + m_IsPrefabAsset: 0 +--- !u!4 &923768514 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 76b08a4798e48db45bb47dcd16cf054c, + type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!1001 &1370848625 +Prefab: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchoredPosition.x + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchoredPosition.y + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_SizeDelta.x + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_SizeDelta.y + value: 100 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMin.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMin.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMax.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_AnchorMax.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 22414968, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8a749df5e56f6422ba9fe64d83915a89, type: 2} + m_IsPrefabAsset: 0 +--- !u!1 &1538313153 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 100002, guid: 76b08a4798e48db45bb47dcd16cf054c, + type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!114 &1538313155 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1538313153} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 30ab04940eec0c14985cb224f8d903cb, type: 3} + m_Name: + m_EditorClassIdentifier: + jointObj_head: {fileID: 1585375456} + jointObj_neck: {fileID: 819416404} + headRotCorrection: -23.194 + neckRotCorrection: 28.319 +--- !u!4 &1585375456 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400040, guid: 76b08a4798e48db45bb47dcd16cf054c, + type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!1 &1613137827 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 184210, guid: 8a749df5e56f6422ba9fe64d83915a89, + type: 2} + m_PrefabInternal: {fileID: 1370848625} +--- !u!114 &1613137828 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1613137827} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ec98db2bfd206014aa81790061a50bfb, type: 3} + m_Name: + m_EditorClassIdentifier: + sub_to_ip: 192.168.56.1 + sub_to_port: 5572 + facsvatar_logging: 0 + participants: 1 + FACSModel0: {fileID: 496511159} + RiggedModel0: {fileID: 1538313155} + FACSModel1: {fileID: 0} + RiggedModel1: {fileID: 0} + FACSModelDnn: {fileID: 0} + RiggedModelDnn: {fileID: 0} +--- !u!1 &1802748333 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 100000, guid: 76b08a4798e48db45bb47dcd16cf054c, + type: 3} + m_PrefabInternal: {fileID: 923768513} +--- !u!114 &1802748334 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1802748333} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8ac5d8ba9ba9ae243a196721bde9e88c, type: 3} + m_Name: + m_EditorClassIdentifier: + headCam: 0 +--- !u!1 &1882014952 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1882014957} + - component: {fileID: 1882014956} + - component: {fileID: 1882014955} + - component: {fileID: 1882014954} + - component: {fileID: 1882014953} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1882014953 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 1882014957} + volumeLayer: + serializedVersion: 2 + m_Bits: 256 + stopNaNPropagation: 1 + antialiasingMode: 0 + temporalAntialiasing: + jitterSpread: 0.75 + sharpness: 0.25 + stationaryBlending: 0.95 + motionBlending: 0.85 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 0 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 0 + m_ShowCustomSorter: 0 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!81 &1882014954 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 0 +--- !u!124 &1882014955 +Behaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 1 +--- !u!20 &1882014956 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 1 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1882014957 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1882014952} + m_LocalRotation: {x: -0, y: 0.9891, z: -0, w: -0.14724566} + m_LocalPosition: {x: 1.584, y: 1.327, z: 0.545} + m_LocalScale: {x: 100, y: 99.99997, z: 99.99997} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 196.935, z: 0} +--- !u!1 &1986896183 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1986896184} + - component: {fileID: 1986896188} + - component: {fileID: 1986896187} + - component: {fileID: 1986896186} + - component: {fileID: 1986896185} + m_Layer: 0 + m_Name: Camera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &1986896184 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_LocalRotation: {x: -0, y: 0.0000005215406, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 1.462, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 923768514} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1986896185 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 1986896184} + volumeLayer: + serializedVersion: 2 + m_Bits: 256 + stopNaNPropagation: 1 + antialiasingMode: 0 + temporalAntialiasing: + jitterSpread: 0.75 + sharpness: 0.25 + stationaryBlending: 0.95 + motionBlending: 0.85 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 0 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 1 + m_ShowCustomSorter: 1 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!81 &1986896186 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 0 +--- !u!124 &1986896187 +Behaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 1 +--- !u!20 &1986896188 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1986896183} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 28 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 1 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 diff --git a/unity_FACSvatar/Assets/Scenes/mobile.unity.meta b/unity_FACSvatar/Assets/Scenes/mobile.unity.meta new file mode 100644 index 0000000..2894f37 --- /dev/null +++ b/unity_FACSvatar/Assets/Scenes/mobile.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6e380e64241d75a4aa5af070abd11dd5 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/unity_FACSAvatar/Assets/Scripts.meta b/unity_FACSvatar/Assets/Scripts.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Scripts.meta rename to unity_FACSvatar/Assets/Scripts.meta diff --git a/unity_FACSAvatar/Assets/Scripts/CameraManager.cs b/unity_FACSvatar/Assets/Scripts/CameraManager.cs similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/CameraManager.cs rename to unity_FACSvatar/Assets/Scripts/CameraManager.cs diff --git a/unity_FACSAvatar/Assets/Scripts/CameraManager.cs.meta b/unity_FACSvatar/Assets/Scripts/CameraManager.cs.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/CameraManager.cs.meta rename to unity_FACSvatar/Assets/Scripts/CameraManager.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/FACSnimator.cs b/unity_FACSvatar/Assets/Scripts/FACSnimator.cs old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/Assets/Scripts/FACSnimator.cs rename to unity_FACSvatar/Assets/Scripts/FACSnimator.cs index c5374ef..aadebd8 --- a/unity_FACSAvatar/Assets/Scripts/FACSnimator.cs +++ b/unity_FACSvatar/Assets/Scripts/FACSnimator.cs @@ -1,52 +1,52 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using Newtonsoft.Json.Linq; // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347 - -public class FACSnimator : MonoBehaviour { - - // Manuel Bastioni / MakeHuman model - SkinnedMeshRenderer skinnedMeshRenderer; - Mesh skinnedMesh; - int blendShapeCount; - Dictionary blendDict = new Dictionary(); - - void Awake() - { - // get MB / MH model - skinnedMeshRenderer = GetComponent(); - skinnedMesh = GetComponent().sharedMesh; - } - - // Use this for initialization - void Start () { - // create dict of all blendshapes this skinnedMesh has - blendShapeCount = skinnedMesh.blendShapeCount; - for (int i = 0; i < blendShapeCount; i++) { - string expression = skinnedMesh.GetBlendShapeName (i); - //Debug.Log(expression); - blendDict.Add (expression, i); - } - } - - // Update is called once per frame - //void Update () { - // - //} - - // Use JSON message to set head rotation and facial expressions; - // IEnumerator to run in main thread (needed for SetBlendShapeWeight) - public IEnumerator RequestBlendshapes(JObject blendJson) - { - // animate character with received Blend Shape values - // per Blend Shape, pass on new value to character - foreach (KeyValuePair pair in blendJson) { - //Debug.Log(pair); // Debug.Log verrrryy slow, don't use in production (>100x slower) - float blend_val = float.Parse(pair.Value.ToString()); - //float blend_val_float = blend_val(); - skinnedMeshRenderer.SetBlendShapeWeight(blendDict[pair.Key], blend_val*100); - } - - yield return null; - } -} +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using Newtonsoft.Json.Linq; // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347 + +public class FACSnimator : MonoBehaviour { + + // Manuel Bastioni / MakeHuman model + SkinnedMeshRenderer skinnedMeshRenderer; + Mesh skinnedMesh; + int blendShapeCount; + Dictionary blendDict = new Dictionary(); + + void Awake() + { + // get MB / MH model + skinnedMeshRenderer = GetComponent(); + skinnedMesh = GetComponent().sharedMesh; + } + + // Use this for initialization + void Start () { + // create dict of all blendshapes this skinnedMesh has + blendShapeCount = skinnedMesh.blendShapeCount; + for (int i = 0; i < blendShapeCount; i++) { + string expression = skinnedMesh.GetBlendShapeName (i); + //Debug.Log(expression); + blendDict.Add (expression, i); + } + } + + // Update is called once per frame + //void Update () { + // + //} + + // Use JSON message to set head rotation and facial expressions; + // IEnumerator to run in main thread (needed for SetBlendShapeWeight) + public IEnumerator RequestBlendshapes(JObject blendJson) + { + // animate character with received Blend Shape values + // per Blend Shape, pass on new value to character + foreach (KeyValuePair pair in blendJson) { + //Debug.Log(pair); // Debug.Log verrrryy slow, don't use in production (>100x slower) + float blend_val = float.Parse(pair.Value.ToString()); + //float blend_val_float = blend_val(); + skinnedMeshRenderer.SetBlendShapeWeight(blendDict[pair.Key], blend_val*100); + } + + yield return null; + } +} diff --git a/unity_FACSAvatar/Assets/Scripts/FACSnimator.cs.meta b/unity_FACSvatar/Assets/Scripts/FACSnimator.cs.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/FACSnimator.cs.meta rename to unity_FACSvatar/Assets/Scripts/FACSnimator.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/HeadCullingFPS.cs b/unity_FACSvatar/Assets/Scripts/HeadCullingFPS.cs similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/HeadCullingFPS.cs rename to unity_FACSvatar/Assets/Scripts/HeadCullingFPS.cs diff --git a/unity_FACSAvatar/Assets/Scripts/HeadCullingFPS.cs.meta b/unity_FACSvatar/Assets/Scripts/HeadCullingFPS.cs.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/HeadCullingFPS.cs.meta rename to unity_FACSvatar/Assets/Scripts/HeadCullingFPS.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/HeadRotator.cs b/unity_FACSvatar/Assets/Scripts/HeadRotator.cs old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/Assets/Scripts/HeadRotator.cs rename to unity_FACSvatar/Assets/Scripts/HeadRotator.cs index 45c1be6..0655c50 --- a/unity_FACSAvatar/Assets/Scripts/HeadRotator.cs +++ b/unity_FACSvatar/Assets/Scripts/HeadRotator.cs @@ -1,152 +1,152 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using Newtonsoft.Json.Linq; // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347 - -public class HeadRotator : MonoBehaviour { - - //Quaternion rotation = Quaternion.identity; - - // Human muscle stuff - HumanPoseHandler humanPoseHandler; - HumanPose humanPose; - Animator anim; - - // Bone stuff - //Transform head; - - // Muscle name and index lookup (See in Debug Log) - void LookUpMuscleIndex() { - string[] muscleName = HumanTrait.MuscleName; - int i = 0; - while (i < HumanTrait.MuscleCount) - { - Debug.Log(i + ": " + muscleName[i] + - " min: " + HumanTrait.GetMuscleDefaultMin(i) + " max: " + HumanTrait.GetMuscleDefaultMax(i)); - i++; - } - } - - // Set character in fetus position - void ResetMuscles() { - // reset all muscles to 0 - for (int i = 0; i < humanPose.muscles.Length; i++) - { - //Debug.Log (humanPose.muscles [i]); - humanPose.muscles[i] = 0; - } - } - - // Use this for initialization - void Start () { - // https://forum.unity.com/threads/humanposehandler.430354/ - - // get attached Animator controller - anim = GetComponent(); - - // run this if you want the indexes to muscles on your character - LookUpMuscleIndex(); - - // TODO keeping body above plane - //Vector3 current_position = transform.position; - //Vector3 pelvis_position = gameObject.transform.GetChild(4).transform.GetChild(0).transform.GetChild(0); - - // get human pose handler - humanPoseHandler = new HumanPoseHandler(anim.avatar, transform); - //humanPoseHandler = GetComponent(); - //humanPoseHandler = new HumanPoseHandler(GetComponent()); - // get human pose - //humanPose = new HumanPose(); - //humanPose = humanPoseHandler.GetHumanPose(); - //humanPose = GetComponent(); - - - // TODO keeping body above plane - //humanPose.bodyPosition = current_position; - //Vector3 new_position = humanPose.bodyPosition; - - //Debug.Log(current_position + " - " + new_position); - - // reference pose to pose handler - humanPoseHandler.GetHumanPose(ref humanPose); - - // set a specific musle; 9: Neck Nod Down-Up - //humanPose.muscles[9] = -20f; - //Debug.Log(humanPose.muscles[9]); - - // use pose information to actually set the pose; - humanPoseHandler.SetHumanPose(ref humanPose); - //Rigidbody.MovePosition (); - } - - //void OnAnimatorIK() { - // anim.SetIKPosition(AvatarIKGoal.); - //} - - void ChangeMuscleValue(int muscleIdx, float radian) { - humanPose.muscles[muscleIdx] = radian; - } - - // Update is called once per frame - //void Update () { - // //humanPoseHandler.SetHumanPose(ref humanPose); - //} - - // Use JSON message to set head rotation and facial expressions; - // IEnumerator to run in main thread (probably needed for animation) - public IEnumerator RequestHeadRotation(JObject head_pose) - { - // rotate head of character with received x, y, z rotations in radian - //List head_rotation = new List (); - //foreach (KeyValuePair pair in head_pose) { - //Debug.Log(pair); - // store head rotation in radian (not degree) - //head_rotation.Add(float.Parse(pair.Value.ToString())); // *Rad2Degree - //head_pose[pair.Key] = float.Parse(pair.Value.ToString()); - //} - - // Rotation OpenFace: https://github.com/TadasBaltrusaitis/OpenFace/wiki/Output-Format - // pitch (Rx), yaw (Ry), and roll (Rz) - - // Indexes to muscles - // 9: Neck Nod Down-Up min: -40 max: 40 - // 10: Neck Tilt Left-Right min: -40 max: 40 - // 11: Neck Turn Left-Right min: -40 max: 40 - // 12: Head Nod Down-Up min: -40 max: 40 - // 13: Head Tilt Left-Right min: -40 max: 40 - // 14: Head Turn Left-Right min: -40 max: 40 - - // 25% neck rotation, 75% head rotation - //Debug.Log("Head rotation: " + head_rotation[0] + ", " + head_rotation[1] + ", " + head_rotation[2]); - // pitch (head up/down); OpenFace returns opposite values, hence *-1 - ChangeMuscleValue(9, head_pose["pose_Rx"].ToObject() * -.5f); - ChangeMuscleValue(12, head_pose["pose_Rx"].ToObject() * -1); // * .75f - - // yaw (turn head left/right) - ChangeMuscleValue(11, head_pose["pose_Ry"].ToObject() * .5f); - ChangeMuscleValue(14, head_pose["pose_Ry"].ToObject()); // * .75f - - // roll - ChangeMuscleValue(10, head_pose["pose_Rz"].ToObject() * -.5f); - ChangeMuscleValue(13, head_pose["pose_Rz"].ToObject() * -1); // * .75f - - // do the animation - humanPoseHandler.SetHumanPose(ref humanPose); - - - - // Bone rotation attempt - //Debug.Log ("" + head_rotation[0] + ", " + head_rotation[1] + ", " + head_rotation[2]); - //Quaternion rotation = Quaternion.Euler(new Vector3(head_rotation[0], head_rotation[1], head_rotation[2])); - //Debug.Log ("" + rotation[0] + ", " + rotation[1] + ", " + rotation[2] + ", " + rotation[3]); - // head.Rotate (rotation); - - // https://docs.unity3d.com/ScriptReference/Quaternion-eulerAngles.html - //rotation.eulerAngles = new Vector3 (head_rotation[0], head_rotation[1], head_rotation[2]); - - // Animator.GetBoneTransform() - //anim.SetBoneLocalRotation(HumanBodyBones.Head, rotation); - - yield return null; - } -} +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using Newtonsoft.Json.Linq; // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347 + +public class HeadRotator : MonoBehaviour { + + //Quaternion rotation = Quaternion.identity; + + // Human muscle stuff + HumanPoseHandler humanPoseHandler; + HumanPose humanPose; + Animator anim; + + // Bone stuff + //Transform head; + + // Muscle name and index lookup (See in Debug Log) + void LookUpMuscleIndex() { + string[] muscleName = HumanTrait.MuscleName; + int i = 0; + while (i < HumanTrait.MuscleCount) + { + Debug.Log(i + ": " + muscleName[i] + + " min: " + HumanTrait.GetMuscleDefaultMin(i) + " max: " + HumanTrait.GetMuscleDefaultMax(i)); + i++; + } + } + + // Set character in fetus position + void ResetMuscles() { + // reset all muscles to 0 + for (int i = 0; i < humanPose.muscles.Length; i++) + { + //Debug.Log (humanPose.muscles [i]); + humanPose.muscles[i] = 0; + } + } + + // Use this for initialization + void Start () { + // https://forum.unity.com/threads/humanposehandler.430354/ + + // get attached Animator controller + anim = GetComponent(); + + // run this if you want the indexes to muscles on your character + LookUpMuscleIndex(); + + // TODO keeping body above plane + //Vector3 current_position = transform.position; + //Vector3 pelvis_position = gameObject.transform.GetChild(4).transform.GetChild(0).transform.GetChild(0); + + // get human pose handler + humanPoseHandler = new HumanPoseHandler(anim.avatar, transform); + //humanPoseHandler = GetComponent(); + //humanPoseHandler = new HumanPoseHandler(GetComponent()); + // get human pose + //humanPose = new HumanPose(); + //humanPose = humanPoseHandler.GetHumanPose(); + //humanPose = GetComponent(); + + + // TODO keeping body above plane + //humanPose.bodyPosition = current_position; + //Vector3 new_position = humanPose.bodyPosition; + + //Debug.Log(current_position + " - " + new_position); + + // reference pose to pose handler + humanPoseHandler.GetHumanPose(ref humanPose); + + // set a specific musle; 9: Neck Nod Down-Up + //humanPose.muscles[9] = -20f; + //Debug.Log(humanPose.muscles[9]); + + // use pose information to actually set the pose; + humanPoseHandler.SetHumanPose(ref humanPose); + //Rigidbody.MovePosition (); + } + + //void OnAnimatorIK() { + // anim.SetIKPosition(AvatarIKGoal.); + //} + + void ChangeMuscleValue(int muscleIdx, float radian) { + humanPose.muscles[muscleIdx] = radian; + } + + // Update is called once per frame + //void Update () { + // //humanPoseHandler.SetHumanPose(ref humanPose); + //} + + // Use JSON message to set head rotation and facial expressions; + // IEnumerator to run in main thread (probably needed for animation) + public IEnumerator RequestHeadRotation(JObject head_pose) + { + // rotate head of character with received x, y, z rotations in radian + //List head_rotation = new List (); + //foreach (KeyValuePair pair in head_pose) { + //Debug.Log(pair); + // store head rotation in radian (not degree) + //head_rotation.Add(float.Parse(pair.Value.ToString())); // *Rad2Degree + //head_pose[pair.Key] = float.Parse(pair.Value.ToString()); + //} + + // Rotation OpenFace: https://github.com/TadasBaltrusaitis/OpenFace/wiki/Output-Format + // pitch (Rx), yaw (Ry), and roll (Rz) + + // Indexes to muscles + // 9: Neck Nod Down-Up min: -40 max: 40 + // 10: Neck Tilt Left-Right min: -40 max: 40 + // 11: Neck Turn Left-Right min: -40 max: 40 + // 12: Head Nod Down-Up min: -40 max: 40 + // 13: Head Tilt Left-Right min: -40 max: 40 + // 14: Head Turn Left-Right min: -40 max: 40 + + // 25% neck rotation, 75% head rotation + //Debug.Log("Head rotation: " + head_rotation[0] + ", " + head_rotation[1] + ", " + head_rotation[2]); + // pitch (head up/down); OpenFace returns opposite values, hence *-1 + ChangeMuscleValue(9, head_pose["pose_Rx"].ToObject() * -.5f); + ChangeMuscleValue(12, head_pose["pose_Rx"].ToObject() * -1); // * .75f + + // yaw (turn head left/right) + ChangeMuscleValue(11, head_pose["pose_Ry"].ToObject() * .5f); + ChangeMuscleValue(14, head_pose["pose_Ry"].ToObject()); // * .75f + + // roll + ChangeMuscleValue(10, head_pose["pose_Rz"].ToObject() * -.5f); + ChangeMuscleValue(13, head_pose["pose_Rz"].ToObject() * -1); // * .75f + + // do the animation + humanPoseHandler.SetHumanPose(ref humanPose); + + + + // Bone rotation attempt + //Debug.Log ("" + head_rotation[0] + ", " + head_rotation[1] + ", " + head_rotation[2]); + //Quaternion rotation = Quaternion.Euler(new Vector3(head_rotation[0], head_rotation[1], head_rotation[2])); + //Debug.Log ("" + rotation[0] + ", " + rotation[1] + ", " + rotation[2] + ", " + rotation[3]); + // head.Rotate (rotation); + + // https://docs.unity3d.com/ScriptReference/Quaternion-eulerAngles.html + //rotation.eulerAngles = new Vector3 (head_rotation[0], head_rotation[1], head_rotation[2]); + + // Animator.GetBoneTransform() + //anim.SetBoneLocalRotation(HumanBodyBones.Head, rotation); + + yield return null; + } +} diff --git a/unity_FACSAvatar/Assets/Scripts/HeadRotator.cs.meta b/unity_FACSvatar/Assets/Scripts/HeadRotator.cs.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/HeadRotator.cs.meta rename to unity_FACSvatar/Assets/Scripts/HeadRotator.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/HeadRotatorBone.cs b/unity_FACSvatar/Assets/Scripts/HeadRotatorBone.cs old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/Assets/Scripts/HeadRotatorBone.cs rename to unity_FACSvatar/Assets/Scripts/HeadRotatorBone.cs index 36e1d81..c8c79c3 --- a/unity_FACSAvatar/Assets/Scripts/HeadRotatorBone.cs +++ b/unity_FACSvatar/Assets/Scripts/HeadRotatorBone.cs @@ -1,179 +1,179 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; -using Newtonsoft.Json.Linq; // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347 - - -public class HeadRotatorBone : MonoBehaviour { - - //Quaternion rotation = Quaternion.identity; - - // Human muscle stuff - //HumanPoseHandler humanPoseHandler; - //HumanPose humanPose; - //Animator anim; - - // Bone stuff - //Transform head; - public Transform jointObj_head; - public Transform jointObj_neck; - public float headRotCorrection; - public float neckRotCorrection; - - // Muscle name and index lookup (See in Debug Log) - // void LookUpMuscleIndex() { - // string[] muscleName = HumanTrait.MuscleName; - // int i = 0; - // while (i < HumanTrait.MuscleCount) - // { - // Debug.Log(i + ": " + muscleName[i] + - // " min: " + HumanTrait.GetMuscleDefaultMin(i) + " max: " + HumanTrait.GetMuscleDefaultMax(i)); - // i++; - // } - // } - - // Set character in fetus position - // void ResetMuscles() { - // // reset all muscles to 0 - // for (int i = 0; i < humanPose.muscles.Length; i++) - // { - // //Debug.Log (humanPose.muscles [i]); - // humanPose.muscles[i] = 0; - // } - // } - - // Use this for initialization - void Start () { - // https://forum.unity.com/threads/humanposehandler.430354/ - - // get attached Animator controller - //anim = GetComponent(); - - // gameObject.demo_ready_armature. - //jointObj = this.gameObject.transform.Find("head"); - - // run this if you want the indexes to muscles on your character - //LookUpMuscleIndex(); - - // TODO keeping body above plane - //Vector3 current_position = transform.position; - //Vector3 pelvis_position = gameObject.transform.GetChild(4).transform.GetChild(0).transform.GetChild(0); - - // get human pose handler - //humanPoseHandler = new HumanPoseHandler(anim.avatar, transform); - //humanPoseHandler = GetComponent(); - //humanPoseHandler = new HumanPoseHandler(GetComponent()); - // get human pose - //humanPose = new HumanPose(); - //humanPose = humanPoseHandler.GetHumanPose(); - //humanPose = GetComponent(); - - - // TODO keeping body above plane - //humanPose.bodyPosition = current_position; - //Vector3 new_position = humanPose.bodyPosition; - - //Debug.Log(current_position + " - " + new_position); - - // reference pose to pose handler - //humanPoseHandler.GetHumanPose(ref humanPose); - - // set a specific musle; 9: Neck Nod Down-Up - //humanPose.muscles[9] = -20f; - //Debug.Log(humanPose.muscles[9]); - - // use pose information to actually set the pose; - //humanPoseHandler.SetHumanPose(ref humanPose); - //Rigidbody.MovePosition (); - } - - //void OnAnimatorIK() { - // anim.SetIKPosition(AvatarIKGoal.); - //} - - //void ChangeMuscleValue(int muscleIdx, float radian) { - // humanPose.muscles[muscleIdx] = radian; - //} - - // Update is called once per frame - //void Update () { - // //humanPoseHandler.SetHumanPose(ref humanPose); - //} - - // Use JSON message to set head rotation and facial expressions; - // IEnumerator to run in main thread (probably needed for animation) - public IEnumerator RequestHeadRotation(JObject head_pose) - { - // rotate head of character with received x, y, z rotations in radian - //List head_rotation = new List (); - //foreach (KeyValuePair pair in head_pose) { - //Debug.Log(pair); - // store head rotation in radian (not degree) - //head_rotation.Add(float.Parse(pair.Value.ToString())); // *Rad2Degree - //head_pose[pair.Key] = float.Parse(pair.Value.ToString()); - //} - - // Rotation OpenFace: https://github.com/TadasBaltrusaitis/OpenFace/wiki/Output-Format - // pitch (Rx), yaw (Ry), and roll (Rz) - - // Indexes to muscles - // 9: Neck Nod Down-Up min: -40 max: 40 - // 10: Neck Tilt Left-Right min: -40 max: 40 - // 11: Neck Turn Left-Right min: -40 max: 40 - // 12: Head Nod Down-Up min: -40 max: 40 - // 13: Head Tilt Left-Right min: -40 max: 40 - // 14: Head Turn Left-Right min: -40 max: 40 - - // 25% neck rotation, 75% head rotation - //Debug.Log("Head rotation: " + head_pose["pose_Rx"] + ", " + head_rotation[1] + ", " + head_rotation[2]); - // pitch (head up/down); OpenFace returns opposite values, hence *-1 - //ChangeMuscleValue(9, head_pose["pose_Rx"].ToObject() * -.5f); - //ChangeMuscleValue(12, head_pose["pose_Rx"].ToObject() * -1); // * .75f - - // yaw (turn head left/right) - //ChangeMuscleValue(11, head_pose["pose_Ry"].ToObject() * .5f); - //ChangeMuscleValue(14, head_pose["pose_Ry"].ToObject()); // * .75f - - // roll - //ChangeMuscleValue(10, head_pose["pose_Rz"].ToObject() * -.5f); - //ChangeMuscleValue(13, head_pose["pose_Rz"].ToObject() * -1); // * .75f - - // do the animation - //humanPoseHandler.SetHumanPose(ref humanPose); - - - - // Bone rotation attempt - //Debug.Log ("" + head_pose["pose_Rx"].ToObject() + ", " + head_pose["pose_Ry"].ToObject() + ", " + head_pose["pose_Rz"].ToObject()); - //Quaternion rotation = Quaternion.Euler(new Vector3(head_pose["pose_Rx"].ToObject(), head_pose["pose_Ry"].ToObject(), head_pose["pose_Rz"].ToObject())); - //Debug.Log ("" + rotation[0] + ", " + rotation[1] + ", " + rotation[2] + ", " + rotation[3]); - //head.Rotate (rotation); - - // https://docs.unity3d.com/ScriptReference/Quaternion-eulerAngles.html - //rotation.eulerAngles = new Vector3 (head_pose["pose_Rx"], head_rotation[1], head_rotation[2]); - - // Animator.GetBoneTransform() - //anim.SetBoneLocalRotation(HumanBodyBones.Head, rotation); - - // jointObj = this.gameObject.transform.Find("head"); - // jointObj = - // Debug.Log(jointObj); - // New attempt bone rotation - float multiplier_head = 0.65f; - float multiplier_neck = 0.35f; - Vector3 rot= new Vector3(head_pose["pose_Rx"].ToObject() * Mathf.Rad2Deg, head_pose["pose_Ry"].ToObject() * Mathf.Rad2Deg, head_pose["pose_Rz"].ToObject() * Mathf.Rad2Deg); - //Vector3 rot = new Vector3(head_pose["pose_Rx"].ToObject() * Mathf.Rad2Deg, 0, 0); - //jointObj_head.localRotation = Quaternion.Euler(rot * multiplier_head); - //jointObj_neck.localRotation = Quaternion.Euler(rot * multiplier_neck); - - // -23.86f - jointObj_head.localRotation = Quaternion.Euler((rot * multiplier_head) + new Vector3(headRotCorrection, 0, 0)); - // +32.928f - jointObj_neck.localRotation = Quaternion.Euler((rot * multiplier_neck) + new Vector3(neckRotCorrection, 0, 0)); - - //jointObj.localEulerAngles = rot; - //localRotation - - yield return null; - } -} +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using Newtonsoft.Json.Linq; // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347 + + +public class HeadRotatorBone : MonoBehaviour { + + //Quaternion rotation = Quaternion.identity; + + // Human muscle stuff + //HumanPoseHandler humanPoseHandler; + //HumanPose humanPose; + //Animator anim; + + // Bone stuff + //Transform head; + public Transform jointObj_head; + public Transform jointObj_neck; + public float headRotCorrection; + public float neckRotCorrection; + + // Muscle name and index lookup (See in Debug Log) + // void LookUpMuscleIndex() { + // string[] muscleName = HumanTrait.MuscleName; + // int i = 0; + // while (i < HumanTrait.MuscleCount) + // { + // Debug.Log(i + ": " + muscleName[i] + + // " min: " + HumanTrait.GetMuscleDefaultMin(i) + " max: " + HumanTrait.GetMuscleDefaultMax(i)); + // i++; + // } + // } + + // Set character in fetus position + // void ResetMuscles() { + // // reset all muscles to 0 + // for (int i = 0; i < humanPose.muscles.Length; i++) + // { + // //Debug.Log (humanPose.muscles [i]); + // humanPose.muscles[i] = 0; + // } + // } + + // Use this for initialization + void Start () { + // https://forum.unity.com/threads/humanposehandler.430354/ + + // get attached Animator controller + //anim = GetComponent(); + + // gameObject.demo_ready_armature. + //jointObj = this.gameObject.transform.Find("head"); + + // run this if you want the indexes to muscles on your character + //LookUpMuscleIndex(); + + // TODO keeping body above plane + //Vector3 current_position = transform.position; + //Vector3 pelvis_position = gameObject.transform.GetChild(4).transform.GetChild(0).transform.GetChild(0); + + // get human pose handler + //humanPoseHandler = new HumanPoseHandler(anim.avatar, transform); + //humanPoseHandler = GetComponent(); + //humanPoseHandler = new HumanPoseHandler(GetComponent()); + // get human pose + //humanPose = new HumanPose(); + //humanPose = humanPoseHandler.GetHumanPose(); + //humanPose = GetComponent(); + + + // TODO keeping body above plane + //humanPose.bodyPosition = current_position; + //Vector3 new_position = humanPose.bodyPosition; + + //Debug.Log(current_position + " - " + new_position); + + // reference pose to pose handler + //humanPoseHandler.GetHumanPose(ref humanPose); + + // set a specific musle; 9: Neck Nod Down-Up + //humanPose.muscles[9] = -20f; + //Debug.Log(humanPose.muscles[9]); + + // use pose information to actually set the pose; + //humanPoseHandler.SetHumanPose(ref humanPose); + //Rigidbody.MovePosition (); + } + + //void OnAnimatorIK() { + // anim.SetIKPosition(AvatarIKGoal.); + //} + + //void ChangeMuscleValue(int muscleIdx, float radian) { + // humanPose.muscles[muscleIdx] = radian; + //} + + // Update is called once per frame + //void Update () { + // //humanPoseHandler.SetHumanPose(ref humanPose); + //} + + // Use JSON message to set head rotation and facial expressions; + // IEnumerator to run in main thread (probably needed for animation) + public IEnumerator RequestHeadRotation(JObject head_pose) + { + // rotate head of character with received x, y, z rotations in radian + //List head_rotation = new List (); + //foreach (KeyValuePair pair in head_pose) { + //Debug.Log(pair); + // store head rotation in radian (not degree) + //head_rotation.Add(float.Parse(pair.Value.ToString())); // *Rad2Degree + //head_pose[pair.Key] = float.Parse(pair.Value.ToString()); + //} + + // Rotation OpenFace: https://github.com/TadasBaltrusaitis/OpenFace/wiki/Output-Format + // pitch (Rx), yaw (Ry), and roll (Rz) + + // Indexes to muscles + // 9: Neck Nod Down-Up min: -40 max: 40 + // 10: Neck Tilt Left-Right min: -40 max: 40 + // 11: Neck Turn Left-Right min: -40 max: 40 + // 12: Head Nod Down-Up min: -40 max: 40 + // 13: Head Tilt Left-Right min: -40 max: 40 + // 14: Head Turn Left-Right min: -40 max: 40 + + // 25% neck rotation, 75% head rotation + //Debug.Log("Head rotation: " + head_pose["pose_Rx"] + ", " + head_rotation[1] + ", " + head_rotation[2]); + // pitch (head up/down); OpenFace returns opposite values, hence *-1 + //ChangeMuscleValue(9, head_pose["pose_Rx"].ToObject() * -.5f); + //ChangeMuscleValue(12, head_pose["pose_Rx"].ToObject() * -1); // * .75f + + // yaw (turn head left/right) + //ChangeMuscleValue(11, head_pose["pose_Ry"].ToObject() * .5f); + //ChangeMuscleValue(14, head_pose["pose_Ry"].ToObject()); // * .75f + + // roll + //ChangeMuscleValue(10, head_pose["pose_Rz"].ToObject() * -.5f); + //ChangeMuscleValue(13, head_pose["pose_Rz"].ToObject() * -1); // * .75f + + // do the animation + //humanPoseHandler.SetHumanPose(ref humanPose); + + + + // Bone rotation attempt + //Debug.Log ("" + head_pose["pose_Rx"].ToObject() + ", " + head_pose["pose_Ry"].ToObject() + ", " + head_pose["pose_Rz"].ToObject()); + //Quaternion rotation = Quaternion.Euler(new Vector3(head_pose["pose_Rx"].ToObject(), head_pose["pose_Ry"].ToObject(), head_pose["pose_Rz"].ToObject())); + //Debug.Log ("" + rotation[0] + ", " + rotation[1] + ", " + rotation[2] + ", " + rotation[3]); + //head.Rotate (rotation); + + // https://docs.unity3d.com/ScriptReference/Quaternion-eulerAngles.html + //rotation.eulerAngles = new Vector3 (head_pose["pose_Rx"], head_rotation[1], head_rotation[2]); + + // Animator.GetBoneTransform() + //anim.SetBoneLocalRotation(HumanBodyBones.Head, rotation); + + // jointObj = this.gameObject.transform.Find("head"); + // jointObj = + // Debug.Log(jointObj); + // New attempt bone rotation + float multiplier_head = 0.65f; + float multiplier_neck = 0.35f; + Vector3 rot= new Vector3(head_pose["pose_Rx"].ToObject() * Mathf.Rad2Deg, head_pose["pose_Ry"].ToObject() * Mathf.Rad2Deg, head_pose["pose_Rz"].ToObject() * Mathf.Rad2Deg); + //Vector3 rot = new Vector3(head_pose["pose_Rx"].ToObject() * Mathf.Rad2Deg, 0, 0); + //jointObj_head.localRotation = Quaternion.Euler(rot * multiplier_head); + //jointObj_neck.localRotation = Quaternion.Euler(rot * multiplier_neck); + + // -23.86f + jointObj_head.localRotation = Quaternion.Euler((rot * multiplier_head) + new Vector3(headRotCorrection, 0, 0)); + // +32.928f + jointObj_neck.localRotation = Quaternion.Euler((rot * multiplier_neck) + new Vector3(neckRotCorrection, 0, 0)); + + //jointObj.localEulerAngles = rot; + //localRotation + + yield return null; + } +} diff --git a/unity_FACSAvatar/Assets/Scripts/HeadRotatorBone.cs.meta b/unity_FACSvatar/Assets/Scripts/HeadRotatorBone.cs.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/HeadRotatorBone.cs.meta rename to unity_FACSvatar/Assets/Scripts/HeadRotatorBone.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/MouthCoverAttach.cs b/unity_FACSvatar/Assets/Scripts/MouthCoverAttach.cs similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/MouthCoverAttach.cs rename to unity_FACSvatar/Assets/Scripts/MouthCoverAttach.cs diff --git a/unity_FACSAvatar/Assets/Scripts/MouthCoverAttach.cs.meta b/unity_FACSvatar/Assets/Scripts/MouthCoverAttach.cs.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/MouthCoverAttach.cs.meta rename to unity_FACSvatar/Assets/Scripts/MouthCoverAttach.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/SceneLoader.cs b/unity_FACSvatar/Assets/Scripts/SceneLoader.cs similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/SceneLoader.cs rename to unity_FACSvatar/Assets/Scripts/SceneLoader.cs diff --git a/unity_FACSAvatar/Assets/Scripts/SceneLoader.cs.meta b/unity_FACSvatar/Assets/Scripts/SceneLoader.cs.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/SceneLoader.cs.meta rename to unity_FACSvatar/Assets/Scripts/SceneLoader.cs.meta diff --git a/unity_FACSAvatar/Assets/Scripts/ZeroMQFACSvatar.cs b/unity_FACSvatar/Assets/Scripts/ZeroMQFACSvatar.cs old mode 100755 new mode 100644 similarity index 67% rename from unity_FACSAvatar/Assets/Scripts/ZeroMQFACSvatar.cs rename to unity_FACSvatar/Assets/Scripts/ZeroMQFACSvatar.cs index 20c4ebf..b1f2c2d --- a/unity_FACSAvatar/Assets/Scripts/ZeroMQFACSvatar.cs +++ b/unity_FACSvatar/Assets/Scripts/ZeroMQFACSvatar.cs @@ -7,6 +7,7 @@ using NetMQ.Sockets; using Newtonsoft.Json.Linq; using System; +using System.IO; public enum Participants { @@ -19,11 +20,16 @@ public class NetMqListener { public string sub_to_ip; public string sub_to_port; + public bool facsvatar_logging = false; private readonly Thread _listenerWorker; private bool _listenerCancelled; public delegate void MessageDelegate(List msg_list); private readonly MessageDelegate _messageDelegate; private readonly ConcurrentQueue> _messageQueue = new ConcurrentQueue>(); + //private string csv_folder = "Assets/Logging/"; + private string csv_path = "Assets/Logging/unity_timestamps_sub.csv"; + private StreamWriter csv_writer; + private long msg_count; public NetMqListener(string sub_to_ip, string sub_to_port) { this.sub_to_ip = sub_to_ip; this.sub_to_port = sub_to_port; @@ -31,7 +37,7 @@ public class NetMqListener private void ListenerWork() { - Debug.Log("Setting up subscriber sock"); + Debug.Log("Setting up subscriber sock"); AsyncIO.ForceDotNet.Force(); using (var subSocket = new SubscriberSocket()) { @@ -69,14 +75,32 @@ private void ListenerWork() //Debug.Log("Received messages:"); //Debug.Log(frame); //Debug.Log(timestamp); - //Debug.Log(facsvatar_json); + //Debug.Log(facsvatar_json); // check if we're not done; timestamp is empty if (timestamp != "") - { - msg_list.Add(topic); - msg_list.Add(timestamp); + { + msg_list.Add(topic); + msg_list.Add(timestamp); msg_list.Add(facsvatar_json); + long timeNowMs = UnixTimeNowMillisec(); + msg_list.Add(timeNowMs.ToString()); // time msg received; for unity performance + + if (facsvatar_logging == true) + { + //Debug.Log("NetMqListener log"); + + //Debug.Log(timeNowMs); + //Debug.Log(timestamp2); + //Debug.Log(timeNowMs - timestamp2); + + // write to csv + // string csvLine = string.Format("{0},{1},{2}", msg_count, timestamp2, timeNowMs); + string csvLine = string.Format("{0},{1}", msg_count, timeNowMs); + csv_writer.WriteLine(csvLine); + } + msg_count++; + _messageQueue.Enqueue(msg_list); } // done @@ -90,6 +114,15 @@ private void ListenerWork() NetMQConfig.Cleanup(); } + public static long UnixTimeNowMillisec() + { + DateTime unixStart = new DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc); + long unixTimeStampInTicks = (DateTime.UtcNow - unixStart).Ticks; + long timeNowMs = unixTimeStampInTicks / (TimeSpan.TicksPerMillisecond / 10000); // 100ns + //Debug.Log(timeNowMs); + return timeNowMs; + } + // check queue for messages public void Update() { @@ -116,6 +149,21 @@ public NetMqListener(MessageDelegate messageDelegate) public void Start() { + if (facsvatar_logging == true) + { + // logging + Debug.Log("Setting up Logging NetMqListener"); + msg_count = -1; + File.Delete(csv_path); // delete previous csv if exist + csv_writer = new StreamWriter(csv_path, true); // , true + csv_writer.WriteLine("msg,time_prev,time_now"); + csv_writer.Flush(); + //csv_writer.Close(); + //csv_writer.Open(); + //csv_writer.WriteLine("time_prev,time_now"); + //csv_writer.Close(); + } + _listenerCancelled = false; _listenerWorker.Start(); } @@ -124,6 +172,10 @@ public void Stop() { _listenerCancelled = true; _listenerWorker.Join(); + if (facsvatar_logging == true) + { + csv_writer.Close(); + } } } @@ -133,17 +185,27 @@ public class ZeroMQFACSvatar : MonoBehaviour private NetMqListener _netMqListener; public string sub_to_ip = "127.0.0.1"; public string sub_to_port = "5572"; + public bool facsvatar_logging = false; public Participants participants; + // logging + private long msg_count; + private string csv_folder = "Assets/Logging/"; + private string csv_path = "Assets/Logging/unity_timestamps_sub.csv"; + private StreamWriter csv_writer; + private string csv_path_total = "Assets/Logging/unity_timestamps_total.csv"; + private StreamWriter csv_writer_total; + + // Facial expressions: Assign by dragging the GameObject with FACSnimator into the inspector before running the game. // Head rotations: Assign by dragging the GameObject with HeadAnimator into the inspector before running the game. public FACSnimator FACSModel0; - public HeadRotatorBone RiggedModel0; - public FACSnimator FACSModel1; - public HeadRotatorBone RiggedModel1; + public HeadRotatorBone RiggedModel0; + public FACSnimator FACSModel1; + public HeadRotatorBone RiggedModel1; public FACSnimator FACSModelDnn; - public HeadRotatorBone RiggedModelDnn; + public HeadRotatorBone RiggedModelDnn; // 2 users 2 models dnn case ignore data from replaced participant private string userIgnoreString = "p1"; @@ -154,11 +216,13 @@ private void HandleMessage(List msg_list) JObject facsvatar = JObject.Parse(msg_list[2]); // get Blend Shape dict JObject blend_shapes = facsvatar["blendshapes"].ToObject(); - // get head pose data - JObject head_pose = facsvatar["pose"].ToObject(); - - // split topic to determine target human model - string[] topic_info = msg_list[0].Split('.'); // "facsvatar.S01_P1.p0.dnn" ["facsvatar", "S01_P1", "p0", "dnn"] + // get head pose data + JObject head_pose = facsvatar["pose"].ToObject(); + + // split topic to determine target human model + //Debug.Log(msg_list[0]); + string[] topic_info = msg_list[0].Split('.'); // "facsvatar.S01_P1.p0.dnn" ["facsvatar", "S01_P1", "p0", "dnn"] + // send to main tread // 1 person @@ -271,10 +335,66 @@ private void HandleMessage(List msg_list) UnityMainThreadDispatcher.Instance().Enqueue(RiggedModel1.RequestHeadRotation(head_pose)); } } + + if (facsvatar_logging == true) + { + // logging + //Debug.Log("ZeroMQFACSvatar log"); + long timeNowMs = UnixTimeNowMillisec(); + long timestampMsgArrived = Convert.ToInt64(msg_list[3]); + //Debug.Log(timeNowMs); + //Debug.Log(timestampMsgArrived); + //Debug.Log(timeNowMs - timestampMsgArrived); + + // write to csv + string csvLine = string.Format("{0},{1},{2}", msg_count, timestampMsgArrived, timeNowMs); + csv_writer.WriteLine(csvLine); + + // if data contains timestamp_utc, write total time + if (facsvatar["timestamp_utc"] != null) + { + //Debug.Log(facsvatar["timestamp_utc"]); + long timeFirstSend = Convert.ToInt64(facsvatar["timestamp_utc"].ToString()); + //Debug.Log((timeNowMs - timeFirstSend) / 10000); + + // write to csv + string csvLine_total = string.Format("{0},{1},{2}", msg_count, timeFirstSend, timeNowMs); + csv_writer_total.WriteLine(csvLine_total); + } + } + + msg_count++; + } + + public static long UnixTimeNowMillisec() + { + DateTime unixStart = new DateTime(1970, 1, 1, 0, 0, 0, 0, System.DateTimeKind.Utc); + long unixTimeStampInTicks = (DateTime.UtcNow - unixStart).Ticks; + long timeNowMs = unixTimeStampInTicks / (TimeSpan.TicksPerMillisecond / 10000); // 100ns + //Debug.Log(timeNowMs); + return timeNowMs; } private void Start() { + if (facsvatar_logging == true) + { + // logging + Debug.Log("Setting up Logging ZeroMQFACSvatar"); + msg_count = -1; + + Directory.CreateDirectory(csv_folder); + File.Delete(csv_path); // delete previous csv if exist + csv_writer = new StreamWriter(csv_path, true); // true; keep steam open + csv_writer.WriteLine("msg,time_prev,time_now"); + csv_writer.Flush(); + + File.Delete(csv_path_total); // delete previous csv if exist + csv_writer_total = new StreamWriter(csv_path_total, true); // true; keep steam open + csv_writer_total.WriteLine("msg,time_prev,time_now"); + csv_writer_total.Flush(); + } + _netMqListener = new NetMqListener(HandleMessage); _netMqListener.sub_to_ip = sub_to_ip; _netMqListener.sub_to_port = sub_to_port; diff --git a/unity_FACSAvatar/Assets/Scripts/ZeroMQFACSvatar.cs.meta b/unity_FACSvatar/Assets/Scripts/ZeroMQFACSvatar.cs.meta similarity index 100% rename from unity_FACSAvatar/Assets/Scripts/ZeroMQFACSvatar.cs.meta rename to unity_FACSvatar/Assets/Scripts/ZeroMQFACSvatar.cs.meta diff --git a/unity_FACSAvatar/Assets/Shaders.meta b/unity_FACSvatar/Assets/Shaders.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Shaders.meta rename to unity_FACSvatar/Assets/Shaders.meta diff --git a/unity_FACSAvatar/Assets/Shaders/SSS.shader b/unity_FACSvatar/Assets/Shaders/SSS.shader old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Shaders/SSS.shader rename to unity_FACSvatar/Assets/Shaders/SSS.shader diff --git a/unity_FACSAvatar/Assets/Shaders/SSS.shader.meta b/unity_FACSvatar/Assets/Shaders/SSS.shader.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Shaders/SSS.shader.meta rename to unity_FACSvatar/Assets/Shaders/SSS.shader.meta diff --git a/unity_FACSAvatar/Assets/Shaders/lashesShader.shader b/unity_FACSvatar/Assets/Shaders/lashesShader.shader old mode 100755 new mode 100644 similarity index 96% rename from unity_FACSAvatar/Assets/Shaders/lashesShader.shader rename to unity_FACSvatar/Assets/Shaders/lashesShader.shader index 6466fb4..18342f5 --- a/unity_FACSAvatar/Assets/Shaders/lashesShader.shader +++ b/unity_FACSvatar/Assets/Shaders/lashesShader.shader @@ -1,40 +1,40 @@ - Shader "Somian/Unlit/Transparent" { - - Properties { - _Color ("Main Color (A=Opacity)", Color) = (1,1,1,1) - _MainTex ("Base (A=Opacity)", 2D) = "" - } - - Category { - Tags {"Queue"="Transparent" "IgnoreProjector"="True"} - ZWrite Off - Blend SrcAlpha OneMinusSrcAlpha - - SubShader {Pass { - GLSLPROGRAM - varying mediump vec2 uv; - - #ifdef VERTEX - uniform mediump vec4 _MainTex_ST; - void main() { - gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; - uv = gl_MultiTexCoord0.xy * _MainTex_ST.xy + _MainTex_ST.zw; - } - #endif - - #ifdef FRAGMENT - uniform lowp sampler2D _MainTex; - uniform lowp vec4 _Color; - void main() { - gl_FragColor = texture2D(_MainTex, uv) * _Color; - } - #endif - ENDGLSL - }} - - SubShader {Pass { - SetTexture[_MainTex] {Combine texture * constant ConstantColor[_Color]} - }} - } - + Shader "Somian/Unlit/Transparent" { + + Properties { + _Color ("Main Color (A=Opacity)", Color) = (1,1,1,1) + _MainTex ("Base (A=Opacity)", 2D) = "" + } + + Category { + Tags {"Queue"="Transparent" "IgnoreProjector"="True"} + ZWrite Off + Blend SrcAlpha OneMinusSrcAlpha + + SubShader {Pass { + GLSLPROGRAM + varying mediump vec2 uv; + + #ifdef VERTEX + uniform mediump vec4 _MainTex_ST; + void main() { + gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; + uv = gl_MultiTexCoord0.xy * _MainTex_ST.xy + _MainTex_ST.zw; + } + #endif + + #ifdef FRAGMENT + uniform lowp sampler2D _MainTex; + uniform lowp vec4 _Color; + void main() { + gl_FragColor = texture2D(_MainTex, uv) * _Color; + } + #endif + ENDGLSL + }} + + SubShader {Pass { + SetTexture[_MainTex] {Combine texture * constant ConstantColor[_Color]} + }} + } + } \ No newline at end of file diff --git a/unity_FACSAvatar/Assets/Shaders/lashesShader.shader.meta b/unity_FACSvatar/Assets/Shaders/lashesShader.shader.meta old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/Assets/Shaders/lashesShader.shader.meta rename to unity_FACSvatar/Assets/Shaders/lashesShader.shader.meta diff --git a/unity_FACSAvatar/Assets/Textures.meta b/unity_FACSvatar/Assets/Textures.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures.meta rename to unity_FACSvatar/Assets/Textures.meta diff --git a/unity_FACSAvatar/Assets/Textures/AsyncIO.dll.meta b/unity_FACSvatar/Assets/Textures/AsyncIO.dll.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/AsyncIO.dll.meta rename to unity_FACSvatar/Assets/Textures/AsyncIO.dll.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_ambient-occlusion.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_alpha.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_browneyes.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_derm_hairshadow_2.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/female/MB_demo_asian-female_ready_body_displ.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_alpha.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_refl.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_f_hair01_tone.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_alpha.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_refl.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/h_m_hair01_tone.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/hair_maps/hair_texture_by_ditney-d64itea.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_derm.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_displ.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/FACSvatar_MB-161a_caucasian_male_old_body_occlussion.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_derm_bk.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png diff --git a/unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png.meta b/unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png.meta rename to unity_FACSvatar/Assets/Textures/ManuelBastioni/male/asianM_body_displ.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe.meta b/unity_FACSvatar/Assets/Textures/cafe.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe.meta rename to unity_FACSvatar/Assets/Textures/cafe.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_diffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_basetable_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_basetable_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_building.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile.jpg b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile.jpg rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile.jpg diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile.jpg.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile.jpg.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_floortile_rough.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof.jpg b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof.jpg rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof.jpg diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof.jpg.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof.jpg.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_roof_rough.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall.jpg b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall.jpg rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall.jpg diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall.jpg.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall.jpg.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_building_wall_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_building_wall_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_diffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_cafeBag_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_diffuse.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_chair_diffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_diffuse.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_chair_diffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_diffuse.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_chair_diffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_diffuse.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_chair_diffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_chair_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_chair_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_chair_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_chair_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_chair_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_column.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_column.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_column.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_column.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_column.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_column.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_column.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_column.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_column_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_column_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_column_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_column_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_column_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_column_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_column_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_column_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_counter.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_counter.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_counter.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_counter.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_counter.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_counter.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_counter.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_counter.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_counter_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_counter_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_counter_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_counter_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_counter_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_counter_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_counter_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_counter_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_counter_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_door.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_door.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_door.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_door.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_door.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_door.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_door.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_door.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_door_2.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_door_2.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_door_2.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_door_2.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_door_2.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_door_2.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_door_2.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_door_2.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_door_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_door_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_door_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_door_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_door_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_door_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_door_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_door_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_jar.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_jar.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_jar.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_jar.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_jar.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_jar.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_jar.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_jar.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_jar_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_jar_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_jar_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_jar_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_jar_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_jar_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_jar_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_jar_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_emission.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_emission.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_emission.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_emission.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_emission.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_emission.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_emission.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_emission.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_lamp_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_lamp_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_menu.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_menu.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_menu.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_menu.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_menu.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_menu.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_menu.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_menu.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_menu_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_menu_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_menu_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_menu_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_menu_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_menu_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_menu_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_menu_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_menu_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_misc.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_misc.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_misc.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_misc.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_misc.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_misc.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_misc.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_misc.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_misc2.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_misc2.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_misc2.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_misc2.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_misc2.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_misc2.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_misc2.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_misc2.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_misc_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_misc_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_misc_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_misc_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_misc_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_misc_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_misc_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_misc_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_table_diffuse.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_table_diffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_table_diffuse.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_table_diffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_table_diffuse.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_table_diffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_table_diffuse.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_table_diffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_table_normal.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_table_normal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_table_normal.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_table_normal.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_table_normal.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_table_normal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_table_normal.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_table_normal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_table_rough.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_table_rough.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_table_rough.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_table_rough.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_table_rough.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_table_rough.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_table_rough.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_table_rough.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png b/unity_FACSvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png rename to unity_FACSvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png.meta b/unity_FACSvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png.meta rename to unity_FACSvatar/Assets/Textures/cafe/cafe_woodplank_diffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/hideTex.png b/unity_FACSvatar/Assets/Textures/hideTex.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/hideTex.png rename to unity_FACSvatar/Assets/Textures/hideTex.png diff --git a/unity_FACSAvatar/Assets/Textures/hideTex.png.meta b/unity_FACSvatar/Assets/Textures/hideTex.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/hideTex.png.meta rename to unity_FACSvatar/Assets/Textures/hideTex.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/potsdamer_platz_1k.jpg b/unity_FACSvatar/Assets/Textures/potsdamer_platz_1k.jpg similarity index 100% rename from unity_FACSAvatar/Assets/Textures/potsdamer_platz_1k.jpg rename to unity_FACSvatar/Assets/Textures/potsdamer_platz_1k.jpg diff --git a/unity_FACSAvatar/Assets/Textures/potsdamer_platz_1k.jpg.meta b/unity_FACSvatar/Assets/Textures/potsdamer_platz_1k.jpg.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/potsdamer_platz_1k.jpg.meta rename to unity_FACSvatar/Assets/Textures/potsdamer_platz_1k.jpg.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit.meta b/unity_FACSvatar/Assets/Textures/suit.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit.meta rename to unity_FACSvatar/Assets/Textures/suit.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/jacketTextureDiffuse2.png b/unity_FACSvatar/Assets/Textures/suit/jacketTextureDiffuse2.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/jacketTextureDiffuse2.png rename to unity_FACSvatar/Assets/Textures/suit/jacketTextureDiffuse2.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/jacketTextureDiffuse2.png.meta b/unity_FACSvatar/Assets/Textures/suit/jacketTextureDiffuse2.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/jacketTextureDiffuse2.png.meta rename to unity_FACSvatar/Assets/Textures/suit/jacketTextureDiffuse2.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/pantsTextureDiffuse.png b/unity_FACSvatar/Assets/Textures/suit/pantsTextureDiffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/pantsTextureDiffuse.png rename to unity_FACSvatar/Assets/Textures/suit/pantsTextureDiffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/pantsTextureDiffuse.png.meta b/unity_FACSvatar/Assets/Textures/suit/pantsTextureDiffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/pantsTextureDiffuse.png.meta rename to unity_FACSvatar/Assets/Textures/suit/pantsTextureDiffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/shirtTexture2.png b/unity_FACSvatar/Assets/Textures/suit/shirtTexture2.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/shirtTexture2.png rename to unity_FACSvatar/Assets/Textures/suit/shirtTexture2.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/shirtTexture2.png.meta b/unity_FACSvatar/Assets/Textures/suit/shirtTexture2.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/shirtTexture2.png.meta rename to unity_FACSvatar/Assets/Textures/suit/shirtTexture2.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitJacketNormal.png b/unity_FACSvatar/Assets/Textures/suit/suitJacketNormal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitJacketNormal.png rename to unity_FACSvatar/Assets/Textures/suit/suitJacketNormal.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitJacketNormal.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitJacketNormal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitJacketNormal.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitJacketNormal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png b/unity_FACSvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png rename to unity_FACSvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitMaleJacketDiffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketNormal.png b/unity_FACSvatar/Assets/Textures/suit/suitMaleJacketNormal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketNormal.png rename to unity_FACSvatar/Assets/Textures/suit/suitMaleJacketNormal.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketNormal.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitMaleJacketNormal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleJacketNormal.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitMaleJacketNormal.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMalePantsDiffuse.png b/unity_FACSvatar/Assets/Textures/suit/suitMalePantsDiffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMalePantsDiffuse.png rename to unity_FACSvatar/Assets/Textures/suit/suitMalePantsDiffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMalePantsDiffuse.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitMalePantsDiffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMalePantsDiffuse.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitMalePantsDiffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMalePantsNormal2.png b/unity_FACSvatar/Assets/Textures/suit/suitMalePantsNormal2.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMalePantsNormal2.png rename to unity_FACSvatar/Assets/Textures/suit/suitMalePantsNormal2.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMalePantsNormal2.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitMalePantsNormal2.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMalePantsNormal2.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitMalePantsNormal2.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleShirt.png b/unity_FACSvatar/Assets/Textures/suit/suitMaleShirt.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleShirt.png rename to unity_FACSvatar/Assets/Textures/suit/suitMaleShirt.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleShirt.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitMaleShirt.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleShirt.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitMaleShirt.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleTieDiffuse.png b/unity_FACSvatar/Assets/Textures/suit/suitMaleTieDiffuse.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleTieDiffuse.png rename to unity_FACSvatar/Assets/Textures/suit/suitMaleTieDiffuse.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitMaleTieDiffuse.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitMaleTieDiffuse.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitMaleTieDiffuse.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitMaleTieDiffuse.png.meta diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitPantsNormal.png b/unity_FACSvatar/Assets/Textures/suit/suitPantsNormal.png similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitPantsNormal.png rename to unity_FACSvatar/Assets/Textures/suit/suitPantsNormal.png diff --git a/unity_FACSAvatar/Assets/Textures/suit/suitPantsNormal.png.meta b/unity_FACSvatar/Assets/Textures/suit/suitPantsNormal.png.meta similarity index 100% rename from unity_FACSAvatar/Assets/Textures/suit/suitPantsNormal.png.meta rename to unity_FACSvatar/Assets/Textures/suit/suitPantsNormal.png.meta diff --git a/unity_FACSvatar/Packages/manifest.json b/unity_FACSvatar/Packages/manifest.json new file mode 100644 index 0000000..a15845d --- /dev/null +++ b/unity_FACSvatar/Packages/manifest.json @@ -0,0 +1,40 @@ +{ + "dependencies": { + "com.unity.ads": "2.0.8", + "com.unity.analytics": "2.0.16", + "com.unity.package-manager-ui": "1.9.11", + "com.unity.postprocessing": "2.0.7-preview", + "com.unity.purchasing": "2.0.3", + "com.unity.textmeshpro": "1.2.4", + "com.unity.modules.ai": "1.0.0", + "com.unity.modules.animation": "1.0.0", + "com.unity.modules.assetbundle": "1.0.0", + "com.unity.modules.audio": "1.0.0", + "com.unity.modules.cloth": "1.0.0", + "com.unity.modules.director": "1.0.0", + "com.unity.modules.imageconversion": "1.0.0", + "com.unity.modules.imgui": "1.0.0", + "com.unity.modules.jsonserialize": "1.0.0", + "com.unity.modules.particlesystem": "1.0.0", + "com.unity.modules.physics": "1.0.0", + "com.unity.modules.physics2d": "1.0.0", + "com.unity.modules.screencapture": "1.0.0", + "com.unity.modules.terrain": "1.0.0", + "com.unity.modules.terrainphysics": "1.0.0", + "com.unity.modules.tilemap": "1.0.0", + "com.unity.modules.ui": "1.0.0", + "com.unity.modules.uielements": "1.0.0", + "com.unity.modules.umbra": "1.0.0", + "com.unity.modules.unityanalytics": "1.0.0", + "com.unity.modules.unitywebrequest": "1.0.0", + "com.unity.modules.unitywebrequestassetbundle": "1.0.0", + "com.unity.modules.unitywebrequestaudio": "1.0.0", + "com.unity.modules.unitywebrequesttexture": "1.0.0", + "com.unity.modules.unitywebrequestwww": "1.0.0", + "com.unity.modules.vehicles": "1.0.0", + "com.unity.modules.video": "1.0.0", + "com.unity.modules.vr": "1.0.0", + "com.unity.modules.wind": "1.0.0", + "com.unity.modules.xr": "1.0.0" + } +} diff --git a/unity_FACSAvatar/ProjectSettings/AudioManager.asset b/unity_FACSvatar/ProjectSettings/AudioManager.asset old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/ProjectSettings/AudioManager.asset rename to unity_FACSvatar/ProjectSettings/AudioManager.asset index 304925e..4f31e74 --- a/unity_FACSAvatar/ProjectSettings/AudioManager.asset +++ b/unity_FACSvatar/ProjectSettings/AudioManager.asset @@ -1,17 +1,17 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!11 &1 -AudioManager: - m_ObjectHideFlags: 0 - m_Volume: 1 - Rolloff Scale: 1 - Doppler Factor: 1 - Default Speaker Mode: 2 - m_SampleRate: 0 - m_DSPBufferSize: 1024 - m_VirtualVoiceCount: 512 - m_RealVoiceCount: 32 - m_SpatializerPlugin: - m_AmbisonicDecoderPlugin: - m_DisableAudio: 0 - m_VirtualizeEffects: 1 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!11 &1 +AudioManager: + m_ObjectHideFlags: 0 + m_Volume: 1 + Rolloff Scale: 1 + Doppler Factor: 1 + Default Speaker Mode: 2 + m_SampleRate: 0 + m_DSPBufferSize: 1024 + m_VirtualVoiceCount: 512 + m_RealVoiceCount: 32 + m_SpatializerPlugin: + m_AmbisonicDecoderPlugin: + m_DisableAudio: 0 + m_VirtualizeEffects: 1 diff --git a/unity_FACSAvatar/ProjectSettings/ClusterInputManager.asset b/unity_FACSvatar/ProjectSettings/ClusterInputManager.asset old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/ProjectSettings/ClusterInputManager.asset rename to unity_FACSvatar/ProjectSettings/ClusterInputManager.asset index a84cf4e..e7886b2 --- a/unity_FACSAvatar/ProjectSettings/ClusterInputManager.asset +++ b/unity_FACSvatar/ProjectSettings/ClusterInputManager.asset @@ -1,6 +1,6 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!236 &1 -ClusterInputManager: - m_ObjectHideFlags: 0 - m_Inputs: [] +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!236 &1 +ClusterInputManager: + m_ObjectHideFlags: 0 + m_Inputs: [] diff --git a/unity_FACSAvatar/ProjectSettings/DynamicsManager.asset b/unity_FACSvatar/ProjectSettings/DynamicsManager.asset old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/ProjectSettings/DynamicsManager.asset rename to unity_FACSvatar/ProjectSettings/DynamicsManager.asset index d2855a3..78992f0 --- a/unity_FACSAvatar/ProjectSettings/DynamicsManager.asset +++ b/unity_FACSvatar/ProjectSettings/DynamicsManager.asset @@ -1,29 +1,29 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!55 &1 -PhysicsManager: - m_ObjectHideFlags: 0 - serializedVersion: 7 - m_Gravity: {x: 0, y: -9.81, z: 0} - m_DefaultMaterial: {fileID: 0} - m_BounceThreshold: 2 - m_SleepThreshold: 0.005 - m_DefaultContactOffset: 0.01 - m_DefaultSolverIterations: 6 - m_DefaultSolverVelocityIterations: 1 - m_QueriesHitBackfaces: 0 - m_QueriesHitTriggers: 1 - m_EnableAdaptiveForce: 0 - m_ClothInterCollisionDistance: 0 - m_ClothInterCollisionStiffness: 0 - m_ContactsGeneration: 1 - m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff - m_AutoSimulation: 1 - m_AutoSyncTransforms: 1 - m_ClothInterCollisionSettingsToggle: 0 - m_ContactPairsMode: 0 - m_BroadphaseType: 0 - m_WorldBounds: - m_Center: {x: 0, y: 0, z: 0} - m_Extent: {x: 250, y: 250, z: 250} - m_WorldSubdivisions: 8 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!55 &1 +PhysicsManager: + m_ObjectHideFlags: 0 + serializedVersion: 7 + m_Gravity: {x: 0, y: -9.81, z: 0} + m_DefaultMaterial: {fileID: 0} + m_BounceThreshold: 2 + m_SleepThreshold: 0.005 + m_DefaultContactOffset: 0.01 + m_DefaultSolverIterations: 6 + m_DefaultSolverVelocityIterations: 1 + m_QueriesHitBackfaces: 0 + m_QueriesHitTriggers: 1 + m_EnableAdaptiveForce: 0 + m_ClothInterCollisionDistance: 0 + m_ClothInterCollisionStiffness: 0 + m_ContactsGeneration: 1 + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff + m_AutoSimulation: 1 + m_AutoSyncTransforms: 1 + m_ClothInterCollisionSettingsToggle: 0 + m_ContactPairsMode: 0 + m_BroadphaseType: 0 + m_WorldBounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 250, y: 250, z: 250} + m_WorldSubdivisions: 8 diff --git a/unity_FACSAvatar/ProjectSettings/EditorBuildSettings.asset b/unity_FACSvatar/ProjectSettings/EditorBuildSettings.asset old mode 100755 new mode 100644 similarity index 82% rename from unity_FACSAvatar/ProjectSettings/EditorBuildSettings.asset rename to unity_FACSvatar/ProjectSettings/EditorBuildSettings.asset index af993b8..5512e5e --- a/unity_FACSAvatar/ProjectSettings/EditorBuildSettings.asset +++ b/unity_FACSvatar/ProjectSettings/EditorBuildSettings.asset @@ -8,10 +8,13 @@ EditorBuildSettings: - enabled: 0 path: guid: 00000000000000000000000000000000 - - enabled: 1 + - enabled: 0 path: Assets/Scenes/cafe_asian_male.unity guid: 56e26c8af8fe7d043a2b0a7859ec82dc - enabled: 0 path: Assets/Scenes/cafe_asian_female.unity guid: 8db7c38fa9261e84581ff7f247976faf + - enabled: 1 + path: Assets/Scenes/mobile.unity + guid: 6e380e64241d75a4aa5af070abd11dd5 m_configObjects: {} diff --git a/unity_FACSAvatar/ProjectSettings/EditorSettings.asset b/unity_FACSvatar/ProjectSettings/EditorSettings.asset old mode 100755 new mode 100644 similarity index 96% rename from unity_FACSAvatar/ProjectSettings/EditorSettings.asset rename to unity_FACSvatar/ProjectSettings/EditorSettings.asset index 78c18ac..29dea52 --- a/unity_FACSAvatar/ProjectSettings/EditorSettings.asset +++ b/unity_FACSvatar/ProjectSettings/EditorSettings.asset @@ -1,21 +1,21 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!159 &1 -EditorSettings: - m_ObjectHideFlags: 0 - serializedVersion: 7 - m_ExternalVersionControlSupport: Visible Meta Files - m_SerializationMode: 2 - m_LineEndingsForNewScripts: 2 - m_DefaultBehaviorMode: 0 - m_SpritePackerMode: 0 - m_SpritePackerPaddingPower: 1 - m_EtcTextureCompressorBehavior: 1 - m_EtcTextureFastCompressor: 1 - m_EtcTextureNormalCompressor: 2 - m_EtcTextureBestCompressor: 4 - m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd - m_ProjectGenerationRootNamespace: - m_UserGeneratedProjectSuffix: - m_CollabEditorSettings: - inProgressEnabled: 1 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!159 &1 +EditorSettings: + m_ObjectHideFlags: 0 + serializedVersion: 7 + m_ExternalVersionControlSupport: Visible Meta Files + m_SerializationMode: 2 + m_LineEndingsForNewScripts: 2 + m_DefaultBehaviorMode: 0 + m_SpritePackerMode: 0 + m_SpritePackerPaddingPower: 1 + m_EtcTextureCompressorBehavior: 1 + m_EtcTextureFastCompressor: 1 + m_EtcTextureNormalCompressor: 2 + m_EtcTextureBestCompressor: 4 + m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd + m_ProjectGenerationRootNamespace: + m_UserGeneratedProjectSuffix: + m_CollabEditorSettings: + inProgressEnabled: 1 diff --git a/unity_FACSAvatar/ProjectSettings/GraphicsSettings.asset b/unity_FACSvatar/ProjectSettings/GraphicsSettings.asset old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/ProjectSettings/GraphicsSettings.asset rename to unity_FACSvatar/ProjectSettings/GraphicsSettings.asset index 9e432d1..a9bbfb0 --- a/unity_FACSAvatar/ProjectSettings/GraphicsSettings.asset +++ b/unity_FACSvatar/ProjectSettings/GraphicsSettings.asset @@ -37,6 +37,7 @@ GraphicsSettings: - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 16002, guid: 0000000000000000f000000000000000, type: 0} m_PreloadedShaders: [] m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} diff --git a/unity_FACSAvatar/ProjectSettings/InputManager.asset b/unity_FACSvatar/ProjectSettings/InputManager.asset old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/ProjectSettings/InputManager.asset rename to unity_FACSvatar/ProjectSettings/InputManager.asset index 2596646..17c8f53 --- a/unity_FACSAvatar/ProjectSettings/InputManager.asset +++ b/unity_FACSvatar/ProjectSettings/InputManager.asset @@ -1,295 +1,295 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!13 &1 -InputManager: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Axes: - - serializedVersion: 3 - m_Name: Horizontal - descriptiveName: - descriptiveNegativeName: - negativeButton: left - positiveButton: right - altNegativeButton: a - altPositiveButton: d - gravity: 3 - dead: 0.001 - sensitivity: 3 - snap: 1 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Vertical - descriptiveName: - descriptiveNegativeName: - negativeButton: down - positiveButton: up - altNegativeButton: s - altPositiveButton: w - gravity: 3 - dead: 0.001 - sensitivity: 3 - snap: 1 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire1 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left ctrl - altNegativeButton: - altPositiveButton: mouse 0 - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire2 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left alt - altNegativeButton: - altPositiveButton: mouse 1 - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire3 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: left shift - altNegativeButton: - altPositiveButton: mouse 2 - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Jump - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: space - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse X - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: 0.1 - snap: 0 - invert: 0 - type: 1 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse Y - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: 0.1 - snap: 0 - invert: 0 - type: 1 - axis: 1 - joyNum: 0 - - serializedVersion: 3 - m_Name: Mouse ScrollWheel - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0 - sensitivity: 0.1 - snap: 0 - invert: 0 - type: 1 - axis: 2 - joyNum: 0 - - serializedVersion: 3 - m_Name: Horizontal - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0.19 - sensitivity: 1 - snap: 0 - invert: 0 - type: 2 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Vertical - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: - altNegativeButton: - altPositiveButton: - gravity: 0 - dead: 0.19 - sensitivity: 1 - snap: 0 - invert: 1 - type: 2 - axis: 1 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire1 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 0 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire2 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 1 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Fire3 - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 2 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Jump - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: joystick button 3 - altNegativeButton: - altPositiveButton: - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Submit - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: return - altNegativeButton: - altPositiveButton: joystick button 0 - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Submit - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: enter - altNegativeButton: - altPositiveButton: space - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 - - serializedVersion: 3 - m_Name: Cancel - descriptiveName: - descriptiveNegativeName: - negativeButton: - positiveButton: escape - altNegativeButton: - altPositiveButton: joystick button 1 - gravity: 1000 - dead: 0.001 - sensitivity: 1000 - snap: 0 - invert: 0 - type: 0 - axis: 0 - joyNum: 0 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!13 &1 +InputManager: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Axes: + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: left + positiveButton: right + altNegativeButton: a + altPositiveButton: d + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: down + positiveButton: up + altNegativeButton: s + altPositiveButton: w + gravity: 3 + dead: 0.001 + sensitivity: 3 + snap: 1 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left ctrl + altNegativeButton: + altPositiveButton: mouse 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left alt + altNegativeButton: + altPositiveButton: mouse 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: left shift + altNegativeButton: + altPositiveButton: mouse 2 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: space + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse X + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse Y + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Mouse ScrollWheel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0 + sensitivity: 0.1 + snap: 0 + invert: 0 + type: 1 + axis: 2 + joyNum: 0 + - serializedVersion: 3 + m_Name: Horizontal + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 0 + type: 2 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Vertical + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: + altNegativeButton: + altPositiveButton: + gravity: 0 + dead: 0.19 + sensitivity: 1 + snap: 0 + invert: 1 + type: 2 + axis: 1 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire1 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 0 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire2 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 1 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Fire3 + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 2 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Jump + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: joystick button 3 + altNegativeButton: + altPositiveButton: + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: return + altNegativeButton: + altPositiveButton: joystick button 0 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Submit + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: enter + altNegativeButton: + altPositiveButton: space + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 + - serializedVersion: 3 + m_Name: Cancel + descriptiveName: + descriptiveNegativeName: + negativeButton: + positiveButton: escape + altNegativeButton: + altPositiveButton: joystick button 1 + gravity: 1000 + dead: 0.001 + sensitivity: 1000 + snap: 0 + invert: 0 + type: 0 + axis: 0 + joyNum: 0 diff --git a/unity_FACSAvatar/ProjectSettings/NavMeshAreas.asset b/unity_FACSvatar/ProjectSettings/NavMeshAreas.asset old mode 100755 new mode 100644 similarity index 93% rename from unity_FACSAvatar/ProjectSettings/NavMeshAreas.asset rename to unity_FACSvatar/ProjectSettings/NavMeshAreas.asset index c8fa1b5..3b0b7c3 --- a/unity_FACSAvatar/ProjectSettings/NavMeshAreas.asset +++ b/unity_FACSvatar/ProjectSettings/NavMeshAreas.asset @@ -1,91 +1,91 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!126 &1 -NavMeshProjectSettings: - m_ObjectHideFlags: 0 - serializedVersion: 2 - areas: - - name: Walkable - cost: 1 - - name: Not Walkable - cost: 1 - - name: Jump - cost: 2 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - - name: - cost: 1 - m_LastAgentTypeID: -887442657 - m_Settings: - - serializedVersion: 2 - agentTypeID: 0 - agentRadius: 0.5 - agentHeight: 2 - agentSlope: 45 - agentClimb: 0.75 - ledgeDropHeight: 0 - maxJumpAcrossDistance: 0 - minRegionArea: 2 - manualCellSize: 0 - cellSize: 0.16666667 - manualTileSize: 0 - tileSize: 256 - accuratePlacement: 0 - debug: - m_Flags: 0 - m_SettingNames: - - Humanoid +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!126 &1 +NavMeshProjectSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + areas: + - name: Walkable + cost: 1 + - name: Not Walkable + cost: 1 + - name: Jump + cost: 2 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + - name: + cost: 1 + m_LastAgentTypeID: -887442657 + m_Settings: + - serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.75 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_SettingNames: + - Humanoid diff --git a/unity_FACSAvatar/ProjectSettings/NetworkManager.asset b/unity_FACSvatar/ProjectSettings/NetworkManager.asset old mode 100755 new mode 100644 similarity index 100% rename from unity_FACSAvatar/ProjectSettings/NetworkManager.asset rename to unity_FACSvatar/ProjectSettings/NetworkManager.asset diff --git a/unity_FACSAvatar/ProjectSettings/Physics2DSettings.asset b/unity_FACSvatar/ProjectSettings/Physics2DSettings.asset old mode 100755 new mode 100644 similarity index 97% rename from unity_FACSAvatar/ProjectSettings/Physics2DSettings.asset rename to unity_FACSvatar/ProjectSettings/Physics2DSettings.asset index 2446c25..132ee6b --- a/unity_FACSAvatar/ProjectSettings/Physics2DSettings.asset +++ b/unity_FACSvatar/ProjectSettings/Physics2DSettings.asset @@ -1,37 +1,37 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!19 &1 -Physics2DSettings: - m_ObjectHideFlags: 0 - serializedVersion: 3 - m_Gravity: {x: 0, y: -9.81} - m_DefaultMaterial: {fileID: 0} - m_VelocityIterations: 8 - m_PositionIterations: 3 - m_VelocityThreshold: 1 - m_MaxLinearCorrection: 0.2 - m_MaxAngularCorrection: 8 - m_MaxTranslationSpeed: 100 - m_MaxRotationSpeed: 360 - m_BaumgarteScale: 0.2 - m_BaumgarteTimeOfImpactScale: 0.75 - m_TimeToSleep: 0.5 - m_LinearSleepTolerance: 0.01 - m_AngularSleepTolerance: 2 - m_DefaultContactOffset: 0.01 - m_AutoSimulation: 1 - m_QueriesHitTriggers: 1 - m_QueriesStartInColliders: 1 - m_ChangeStopsCallbacks: 0 - m_CallbacksOnDisable: 1 - m_AutoSyncTransforms: 1 - m_AlwaysShowColliders: 0 - m_ShowColliderSleep: 1 - m_ShowColliderContacts: 0 - m_ShowColliderAABB: 0 - m_ContactArrowScale: 0.2 - m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} - m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} - m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} - m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} - m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!19 &1 +Physics2DSettings: + m_ObjectHideFlags: 0 + serializedVersion: 3 + m_Gravity: {x: 0, y: -9.81} + m_DefaultMaterial: {fileID: 0} + m_VelocityIterations: 8 + m_PositionIterations: 3 + m_VelocityThreshold: 1 + m_MaxLinearCorrection: 0.2 + m_MaxAngularCorrection: 8 + m_MaxTranslationSpeed: 100 + m_MaxRotationSpeed: 360 + m_BaumgarteScale: 0.2 + m_BaumgarteTimeOfImpactScale: 0.75 + m_TimeToSleep: 0.5 + m_LinearSleepTolerance: 0.01 + m_AngularSleepTolerance: 2 + m_DefaultContactOffset: 0.01 + m_AutoSimulation: 1 + m_QueriesHitTriggers: 1 + m_QueriesStartInColliders: 1 + m_ChangeStopsCallbacks: 0 + m_CallbacksOnDisable: 1 + m_AutoSyncTransforms: 1 + m_AlwaysShowColliders: 0 + m_ShowColliderSleep: 1 + m_ShowColliderContacts: 0 + m_ShowColliderAABB: 0 + m_ContactArrowScale: 0.2 + m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} + m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} + m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} + m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} + m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff diff --git a/unity_FACSAvatar/ProjectSettings/PresetManager.asset b/unity_FACSvatar/ProjectSettings/PresetManager.asset old mode 100755 new mode 100644 similarity index 96% rename from unity_FACSAvatar/ProjectSettings/PresetManager.asset rename to unity_FACSvatar/ProjectSettings/PresetManager.asset index b43eac1..820e662 --- a/unity_FACSAvatar/ProjectSettings/PresetManager.asset +++ b/unity_FACSvatar/ProjectSettings/PresetManager.asset @@ -1,27 +1,27 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1386491679 &1 -PresetManager: - m_ObjectHideFlags: 0 - m_DefaultList: - - type: - m_NativeTypeID: 108 - m_ManagedTypePPtr: {fileID: 0} - m_ManagedTypeFallback: - defaultPresets: - - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea, - type: 2} - - type: - m_NativeTypeID: 1020 - m_ManagedTypePPtr: {fileID: 0} - m_ManagedTypeFallback: - defaultPresets: - - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6, - type: 2} - - type: - m_NativeTypeID: 1006 - m_ManagedTypePPtr: {fileID: 0} - m_ManagedTypeFallback: - defaultPresets: - - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9, - type: 2} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1386491679 &1 +PresetManager: + m_ObjectHideFlags: 0 + m_DefaultList: + - type: + m_NativeTypeID: 108 + m_ManagedTypePPtr: {fileID: 0} + m_ManagedTypeFallback: + defaultPresets: + - m_Preset: {fileID: 2655988077585873504, guid: c1cf8506f04ef2c4a88b64b6c4202eea, + type: 2} + - type: + m_NativeTypeID: 1020 + m_ManagedTypePPtr: {fileID: 0} + m_ManagedTypeFallback: + defaultPresets: + - m_Preset: {fileID: 2655988077585873504, guid: 0cd792cc87e492d43b4e95b205fc5cc6, + type: 2} + - type: + m_NativeTypeID: 1006 + m_ManagedTypePPtr: {fileID: 0} + m_ManagedTypeFallback: + defaultPresets: + - m_Preset: {fileID: 2655988077585873504, guid: 7a99f8aa944efe94cb9bd74562b7d5f9, + type: 2} diff --git a/unity_FACSAvatar/ProjectSettings/ProjectSettings.asset b/unity_FACSvatar/ProjectSettings/ProjectSettings.asset old mode 100755 new mode 100644 similarity index 89% rename from unity_FACSAvatar/ProjectSettings/ProjectSettings.asset rename to unity_FACSvatar/ProjectSettings/ProjectSettings.asset index e7764fb..977c981 --- a/unity_FACSAvatar/ProjectSettings/ProjectSettings.asset +++ b/unity_FACSvatar/ProjectSettings/ProjectSettings.asset @@ -52,7 +52,6 @@ PlayerSettings: m_StackTraceTypes: 010000000100000001000000010000000100000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 - tizenShowActivityIndicatorOnLoading: -1 iosAppInBackgroundBehavior: 0 displayResolutionDialog: 1 iosAllowHTTPDownload: 1 @@ -111,6 +110,8 @@ PlayerSettings: videoMemoryForVertexBuffers: 0 psp2PowerMode: 0 psp2AcquireBGM: 1 + vulkanEnableSetSRGBWrite: 0 + vulkanUseSWCommandBuffers: 0 m_SupportedAspectRatios: 4:3: 1 5:4: 1 @@ -124,6 +125,7 @@ PlayerSettings: m_HolographicPauseOnTrackingLoss: 1 xboxOneDisableKinectGpuReservation: 0 xboxOneEnable7thCore: 0 + isWsaHolographicRemotingEnabled: 0 vrSettings: cardboard: depthFormat: 0 @@ -138,10 +140,10 @@ PlayerSettings: hololens: depthFormat: 1 depthBufferSharingEnabled: 0 - enable360StereoCapture: 0 oculus: sharedDepthBuffer: 0 dashSupport: 0 + enable360StereoCapture: 0 protectGraphicsMemory: 0 useHDRDisplay: 0 m_ColorGamuts: 00000000 @@ -149,10 +151,11 @@ PlayerSettings: resolutionScalingMode: 0 androidSupportedAspectRatio: 1 androidMaxAspectRatio: 2.1 - applicationIdentifier: {} + applicationIdentifier: + Android: eu.surafusoft.facsvatar buildNumber: {} AndroidBundleVersionCode: 1 - AndroidMinSdkVersion: 16 + AndroidMinSdkVersion: 27 AndroidTargetSdkVersion: 0 AndroidPreferredInstallLocation: 1 aotOptions: @@ -233,6 +236,7 @@ PlayerSettings: appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 appleEnableProMotion: 0 + vulkanEditorSupport: 0 clonedFromGUID: 56e7a2d3a00f33d44bdd161b773c35b5 templatePackageId: com.unity.template.3d@1.0.0 templateDefaultScene: Assets/Scenes/SampleScene.unity @@ -241,6 +245,7 @@ PlayerSettings: androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: + AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 1 AndroidIsGame: 1 AndroidEnableTango: 0 @@ -253,7 +258,99 @@ PlayerSettings: androidGamepadSupportLevel: 0 resolutionDialogBanner: {fileID: 0} m_BuildTargetIcons: [] - m_BuildTargetPlatformIcons: [] + m_BuildTargetPlatformIcons: + - m_BuildTarget: Android + m_Icons: + - m_Textures: [] + m_Width: 432 + m_Height: 432 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 324 + m_Height: 324 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 216 + m_Height: 216 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 162 + m_Height: 162 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 108 + m_Height: 108 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 81 + m_Height: 81 + m_Kind: 2 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 0 + m_SubKind: + - m_Textures: [] + m_Width: 192 + m_Height: 192 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 144 + m_Height: 144 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 96 + m_Height: 96 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 72 + m_Height: 72 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 48 + m_Height: 48 + m_Kind: 1 + m_SubKind: + - m_Textures: [] + m_Width: 36 + m_Height: 36 + m_Kind: 1 + m_SubKind: m_BuildTargetBatching: - m_BuildTarget: Standalone m_StaticBatching: 1 @@ -298,6 +395,7 @@ PlayerSettings: iPhone: 1 tvOS: 1 m_BuildTargetGroupLightmapEncodingQuality: [] + m_BuildTargetGroupLightmapSettings: [] playModeTestRunnerEnabled: 0 runPlayModeTestAsEditModeTest: 0 actionOnDotNetUnhandledException: 1 @@ -419,8 +517,11 @@ PlayerSettings: switchAllowsVideoCapturing: 1 switchAllowsRuntimeAddOnContentInstall: 0 switchDataLossConfirmation: 0 + switchUserAccountLockEnabled: 0 switchSupportedNpadStyles: 3 switchNativeFsCacheSize: 32 + switchIsHoldTypeHorizontal: 0 + switchSupportedNpadCount: 8 switchSocketConfigEnabled: 0 switchTcpInitialSendBufferSize: 32 switchTcpInitialReceiveBufferSize: 64 @@ -597,7 +698,6 @@ PlayerSettings: metroApplicationDescription: Template_3D wsaImages: {} metroTileShortName: - metroCommandLineArgsFile: metroTileShowName: 0 metroMediumTileShowName: 0 metroLargeTileShowName: 0 @@ -613,14 +713,6 @@ PlayerSettings: metroFTAFileTypes: [] metroProtocolName: metroCompilationOverrides: 1 - tizenProductDescription: - tizenProductURL: - tizenSigningProfileName: - tizenGPSPermissions: 0 - tizenMicrophonePermissions: 0 - tizenDeploymentTarget: - tizenDeploymentTargetType: -1 - tizenMinOSVersion: 1 n3dsUseExtSaveData: 0 n3dsCompressStaticMem: 1 n3dsExtSaveDataNumber: 0x12345 @@ -641,6 +733,7 @@ PlayerSettings: XboxOneGameOsOverridePath: XboxOnePackagingOverridePath: XboxOneAppManifestOverridePath: + XboxOneVersion: 1.0.0.0 XboxOnePackageEncryption: 0 XboxOnePackageUpdateGranularity: 2 XboxOneDescription: diff --git a/unity_FACSvatar/ProjectSettings/ProjectVersion.txt b/unity_FACSvatar/ProjectSettings/ProjectVersion.txt new file mode 100644 index 0000000..72e8e22 --- /dev/null +++ b/unity_FACSvatar/ProjectSettings/ProjectVersion.txt @@ -0,0 +1 @@ +m_EditorVersion: 2018.2.13f1 diff --git a/unity_FACSAvatar/ProjectSettings/QualitySettings.asset b/unity_FACSvatar/ProjectSettings/QualitySettings.asset old mode 100755 new mode 100644 similarity index 96% rename from unity_FACSAvatar/ProjectSettings/QualitySettings.asset rename to unity_FACSvatar/ProjectSettings/QualitySettings.asset index ddad6fe..b9320b3 --- a/unity_FACSAvatar/ProjectSettings/QualitySettings.asset +++ b/unity_FACSvatar/ProjectSettings/QualitySettings.asset @@ -1,190 +1,190 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!47 &1 -QualitySettings: - m_ObjectHideFlags: 0 - serializedVersion: 5 - m_CurrentQuality: 4 - m_QualitySettings: - - serializedVersion: 2 - name: Very Low - pixelLightCount: 0 - shadows: 0 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 15 - shadowNearPlaneOffset: 3 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - shadowmaskMode: 0 - blendWeights: 1 - textureQuality: 1 - anisotropicTextures: 0 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - realtimeReflectionProbes: 0 - billboardsFaceCameraPosition: 0 - vSyncCount: 0 - lodBias: 0.3 - maximumLODLevel: 0 - particleRaycastBudget: 4 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - resolutionScalingFixedDPIFactor: 1 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Low - pixelLightCount: 0 - shadows: 0 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 20 - shadowNearPlaneOffset: 3 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - shadowmaskMode: 0 - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 0 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - realtimeReflectionProbes: 0 - billboardsFaceCameraPosition: 0 - vSyncCount: 0 - lodBias: 0.4 - maximumLODLevel: 0 - particleRaycastBudget: 16 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - resolutionScalingFixedDPIFactor: 1 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Medium - pixelLightCount: 1 - shadows: 1 - shadowResolution: 0 - shadowProjection: 1 - shadowCascades: 1 - shadowDistance: 20 - shadowNearPlaneOffset: 3 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - shadowmaskMode: 0 - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 0 - softParticles: 0 - softVegetation: 0 - realtimeReflectionProbes: 0 - billboardsFaceCameraPosition: 0 - vSyncCount: 1 - lodBias: 0.7 - maximumLODLevel: 0 - particleRaycastBudget: 64 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - resolutionScalingFixedDPIFactor: 1 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: High - pixelLightCount: 2 - shadows: 2 - shadowResolution: 1 - shadowProjection: 1 - shadowCascades: 2 - shadowDistance: 40 - shadowNearPlaneOffset: 3 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - shadowmaskMode: 1 - blendWeights: 2 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 2 - softParticles: 0 - softVegetation: 1 - realtimeReflectionProbes: 1 - billboardsFaceCameraPosition: 1 - vSyncCount: 1 - lodBias: 1 - maximumLODLevel: 0 - particleRaycastBudget: 256 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - resolutionScalingFixedDPIFactor: 1 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Very High - pixelLightCount: 3 - shadows: 2 - shadowResolution: 2 - shadowProjection: 1 - shadowCascades: 2 - shadowDistance: 40 - shadowNearPlaneOffset: 3 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - shadowmaskMode: 1 - blendWeights: 4 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 4 - softParticles: 1 - softVegetation: 1 - realtimeReflectionProbes: 1 - billboardsFaceCameraPosition: 1 - vSyncCount: 1 - lodBias: 1.5 - maximumLODLevel: 0 - particleRaycastBudget: 1024 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - resolutionScalingFixedDPIFactor: 1 - excludedTargetPlatforms: [] - - serializedVersion: 2 - name: Ultra - pixelLightCount: 4 - shadows: 2 - shadowResolution: 2 - shadowProjection: 1 - shadowCascades: 4 - shadowDistance: 150 - shadowNearPlaneOffset: 3 - shadowCascade2Split: 0.33333334 - shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} - shadowmaskMode: 1 - blendWeights: 4 - textureQuality: 0 - anisotropicTextures: 1 - antiAliasing: 4 - softParticles: 1 - softVegetation: 1 - realtimeReflectionProbes: 1 - billboardsFaceCameraPosition: 1 - vSyncCount: 1 - lodBias: 2 - maximumLODLevel: 0 - particleRaycastBudget: 4096 - asyncUploadTimeSlice: 2 - asyncUploadBufferSize: 4 - resolutionScalingFixedDPIFactor: 1 - excludedTargetPlatforms: [] - m_PerPlatformDefaultQuality: - Android: 2 - Nintendo 3DS: 5 - Nintendo Switch: 5 - PS4: 5 - PSP2: 2 - Standalone: 5 - Tizen: 2 - WebGL: 3 - WiiU: 5 - Windows Store Apps: 5 - XboxOne: 5 - iPhone: 2 - tvOS: 2 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!47 &1 +QualitySettings: + m_ObjectHideFlags: 0 + serializedVersion: 5 + m_CurrentQuality: 4 + m_QualitySettings: + - serializedVersion: 2 + name: Very Low + pixelLightCount: 0 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 15 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + blendWeights: 1 + textureQuality: 1 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 0 + lodBias: 0.3 + maximumLODLevel: 0 + particleRaycastBudget: 4 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Low + pixelLightCount: 0 + shadows: 0 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 20 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + blendWeights: 2 + textureQuality: 0 + anisotropicTextures: 0 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 0 + lodBias: 0.4 + maximumLODLevel: 0 + particleRaycastBudget: 16 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Medium + pixelLightCount: 1 + shadows: 1 + shadowResolution: 0 + shadowProjection: 1 + shadowCascades: 1 + shadowDistance: 20 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 0 + blendWeights: 2 + textureQuality: 0 + anisotropicTextures: 1 + antiAliasing: 0 + softParticles: 0 + softVegetation: 0 + realtimeReflectionProbes: 0 + billboardsFaceCameraPosition: 0 + vSyncCount: 1 + lodBias: 0.7 + maximumLODLevel: 0 + particleRaycastBudget: 64 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: High + pixelLightCount: 2 + shadows: 2 + shadowResolution: 1 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 40 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + blendWeights: 2 + textureQuality: 0 + anisotropicTextures: 1 + antiAliasing: 2 + softParticles: 0 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + vSyncCount: 1 + lodBias: 1 + maximumLODLevel: 0 + particleRaycastBudget: 256 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Very High + pixelLightCount: 3 + shadows: 2 + shadowResolution: 2 + shadowProjection: 1 + shadowCascades: 2 + shadowDistance: 40 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + blendWeights: 4 + textureQuality: 0 + anisotropicTextures: 1 + antiAliasing: 4 + softParticles: 1 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + vSyncCount: 1 + lodBias: 1.5 + maximumLODLevel: 0 + particleRaycastBudget: 1024 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + - serializedVersion: 2 + name: Ultra + pixelLightCount: 4 + shadows: 2 + shadowResolution: 2 + shadowProjection: 1 + shadowCascades: 4 + shadowDistance: 150 + shadowNearPlaneOffset: 3 + shadowCascade2Split: 0.33333334 + shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} + shadowmaskMode: 1 + blendWeights: 4 + textureQuality: 0 + anisotropicTextures: 1 + antiAliasing: 4 + softParticles: 1 + softVegetation: 1 + realtimeReflectionProbes: 1 + billboardsFaceCameraPosition: 1 + vSyncCount: 1 + lodBias: 2 + maximumLODLevel: 0 + particleRaycastBudget: 4096 + asyncUploadTimeSlice: 2 + asyncUploadBufferSize: 4 + resolutionScalingFixedDPIFactor: 1 + excludedTargetPlatforms: [] + m_PerPlatformDefaultQuality: + Android: 2 + Nintendo 3DS: 5 + Nintendo Switch: 5 + PS4: 5 + PSP2: 2 + Standalone: 5 + Tizen: 2 + WebGL: 3 + WiiU: 5 + Windows Store Apps: 5 + XboxOne: 5 + iPhone: 2 + tvOS: 2 diff --git a/unity_FACSAvatar/ProjectSettings/TagManager.asset b/unity_FACSvatar/ProjectSettings/TagManager.asset old mode 100755 new mode 100644 similarity index 90% rename from unity_FACSAvatar/ProjectSettings/TagManager.asset rename to unity_FACSvatar/ProjectSettings/TagManager.asset index 5ce97fb..17cb803 --- a/unity_FACSAvatar/ProjectSettings/TagManager.asset +++ b/unity_FACSvatar/ProjectSettings/TagManager.asset @@ -1,43 +1,43 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!78 &1 -TagManager: - serializedVersion: 2 - tags: [] - layers: - - Default - - TransparentFX - - Ignore Raycast - - - - Water - - UI - - - - - - PostProcessing - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - m_SortingLayers: - - name: Default - uniqueID: 0 - locked: 0 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!78 &1 +TagManager: + serializedVersion: 2 + tags: [] + layers: + - Default + - TransparentFX + - Ignore Raycast + - + - Water + - UI + - + - + - PostProcessing + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + m_SortingLayers: + - name: Default + uniqueID: 0 + locked: 0 diff --git a/unity_FACSAvatar/ProjectSettings/TimeManager.asset b/unity_FACSvatar/ProjectSettings/TimeManager.asset old mode 100755 new mode 100644 similarity index 95% rename from unity_FACSAvatar/ProjectSettings/TimeManager.asset rename to unity_FACSvatar/ProjectSettings/TimeManager.asset index 6beec3d..035ddca --- a/unity_FACSAvatar/ProjectSettings/TimeManager.asset +++ b/unity_FACSvatar/ProjectSettings/TimeManager.asset @@ -1,9 +1,9 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!5 &1 -TimeManager: - m_ObjectHideFlags: 0 - Fixed Timestep: 0.0167 - Maximum Allowed Timestep: 0.1 - m_TimeScale: 1 - Maximum Particle Timestep: 0.03 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!5 &1 +TimeManager: + m_ObjectHideFlags: 0 + Fixed Timestep: 0.0167 + Maximum Allowed Timestep: 0.1 + m_TimeScale: 1 + Maximum Particle Timestep: 0.03 diff --git a/unity_FACSAvatar/ProjectSettings/UnityConnectSettings.asset b/unity_FACSvatar/ProjectSettings/UnityConnectSettings.asset old mode 100755 new mode 100644 similarity index 94% rename from unity_FACSAvatar/ProjectSettings/UnityConnectSettings.asset rename to unity_FACSvatar/ProjectSettings/UnityConnectSettings.asset index 9b1020b..863581f --- a/unity_FACSAvatar/ProjectSettings/UnityConnectSettings.asset +++ b/unity_FACSvatar/ProjectSettings/UnityConnectSettings.asset @@ -1,34 +1,34 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!310 &1 -UnityConnectSettings: - m_ObjectHideFlags: 0 - m_Enabled: 0 - m_TestMode: 0 - m_TestEventUrl: - m_TestConfigUrl: - m_TestInitMode: 0 - CrashReportingSettings: - m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes - m_NativeEventUrl: https://perf-events.cloud.unity3d.com/symbolicate - m_Enabled: 0 - m_CaptureEditorExceptions: 1 - UnityPurchasingSettings: - m_Enabled: 0 - m_TestMode: 0 - UnityAnalyticsSettings: - m_Enabled: 1 - m_InitializeOnStartup: 1 - m_TestMode: 0 - m_TestEventUrl: - m_TestConfigUrl: - UnityAdsSettings: - m_Enabled: 0 - m_InitializeOnStartup: 1 - m_TestMode: 0 - m_IosGameId: - m_AndroidGameId: - m_GameIds: {} - m_GameId: - PerformanceReportingSettings: - m_Enabled: 0 +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!310 &1 +UnityConnectSettings: + m_ObjectHideFlags: 0 + m_Enabled: 1 + m_TestMode: 0 + m_TestEventUrl: + m_TestConfigUrl: + m_TestInitMode: 0 + CrashReportingSettings: + m_EventUrl: https://perf-events.cloud.unity3d.com/api/events/crashes + m_NativeEventUrl: https://perf-events.cloud.unity3d.com/symbolicate + m_Enabled: 0 + m_CaptureEditorExceptions: 1 + UnityPurchasingSettings: + m_Enabled: 0 + m_TestMode: 0 + UnityAnalyticsSettings: + m_Enabled: 1 + m_InitializeOnStartup: 1 + m_TestMode: 0 + m_TestEventUrl: + m_TestConfigUrl: + UnityAdsSettings: + m_Enabled: 0 + m_InitializeOnStartup: 1 + m_TestMode: 0 + m_IosGameId: + m_AndroidGameId: + m_GameIds: {} + m_GameId: + PerformanceReportingSettings: + m_Enabled: 0